訪問 AWS Lambda 的 Amazon CloudWatch 日志


AWS Lambda 會自動替您監控 Lambda 函數,並通過 Amazon CloudWatch 報告各項指標。為幫助您診斷函數中的問題,Lambda 會記錄您的函數處理的所有請求,並通過 Amazon CloudWatch Logs 自動存儲您的代碼生成的日志。

您可以在代碼中插入日志記錄語句來幫助驗證代碼是否按預期運行。Lambda 自動與 CloudWatch Logs 集成,並將您的代碼的所有日志推送到與 Lambda 函數關聯的 CloudWatch Logs 組(即名為 /aws/lambda/<函數名> 的組)。有關日志組和通過 CloudWatch 控制台訪問它們的更多信息,請參閱 Amazon CloudWatch 用戶指南 中的監控系統、應用程序和自定義日志文件

您可以借助 Lambda 控制台、CloudWatch 控制台、AWS CLI 或 CloudWatch API 查看 Lambda 日志。下面的流程介紹如何使用 Lambda 控制台查看日志。

注意

使用 Lambda 日志沒有額外的費用;不過,會收取標准 CloudWatch Logs 費用。有關更多信息,請參閱 CloudWatch 定價

使用 Lambda 控制台查看日志

  1. 打開 Lambda 控制台

  2. 打開 Lambda 控制台 函數頁面

  3. 選擇 Monitoring

    
          事件

    所示為 Lambda 函數指標的圖形化表示。

  4. 選擇查看 CloudWatch 中的日志

Lambda 使用您的函數的權限將日志上傳到 CloudWatch Logs。如果您未在控制台中看到日志,請檢查您的執行角色權限

AWS Lambda 執行角色

AWS Lambda 函數的執行角色授予該函數訪問 AWS 服務和資源的權限。您在創建函數時提供該角色,當您的函數被調用時,Lambda 代入該角色。您可以創建一個有權將日志發送到 Amazon CloudWatch 並將跟蹤數據上傳到 AWS X-Ray 的開發執行角色。

創建執行角色

  1. 打開 IAM 控制台中的“角色”頁面

  2. 選擇 Create role (創建角色)

  3. 創建具有以下屬性的角色:

    • 可信任的實體 – AWS Lambda

    • 權限 – AWSLambdaBasicExecutionRoleAWSXrayWriteOnlyAccess

    • 角色名稱 – lambda-role

可以隨時在函數的執行角色中添加或刪除權限,或配置您的函數以使用不同的角色。為您的函數使用 AWS 開發工具包調用的任何服務以及為 Lambda 用來啟用可選功能的服務添加權限。

以下托管策略提供使用 Lambda 功能所需的權限:

  • AWSLambdaBasicExecutionRole – 將日志上傳到 CloudWatch 的權限。

  • AWSLambdaKinesisExecutionRole – 讀取來自 Amazon Kinesis 數據流或使用者的事件的權限。

  • AWSLambdaDynamoDBExecutionRole – 讀取 Amazon DynamoDB 流記錄的權限。

  • AWSLambdaSQSQueueExecutionRole – 讀取 Amazon Simple Queue Service (Amazon SQS) 隊列消息的權限。

  • AWSLambdaVPCAccessExecutionRole – 管理彈性網絡接口以將您的函數連接到 VPC 的權限。

  • AWSXrayWriteOnlyAccess – 將跟蹤數據上傳到 X-Ray 的權限。

當您使用事件源映射調用您的函數時,Lambda 將使用執行角色讀取事件數據。例如,Amazon Kinesis 的事件源映射從數據流讀取事件並將事件成批發送到您的函數。可以將事件源映射用於以下服務:

Lambda 從其讀取事件的服務

除了托管策略,Lambda 控制台還為創建包含與額外用例相關的權限的自定義策略提供模板。當您創建函數時,可以選擇利用來自一個或多個模板的權限創建新的執行角色。當您從藍圖創建函數,或者配置需要訪問其他服務的選項時,也會自動應用這些模板。示例模板可從本指南的 GitHub 存儲庫中找到。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM