
- AWS Lambda 教程
- AWS Lambda - 首頁
- AWS Lambda - 概述
- AWS Lambda - 環境設定
- AWS Lambda - 簡介
- 構建 Lambda 函式
- Node.js 函式
- Java 函式
- Python 函式
- Go 函式
- C# 函式
- 配置 Lambda 函式
- 使用 AWS 控制檯建立和部署
- 使用 AWS CLI 建立和部署
- 使用 Serverless Framework 建立和部署
- AWS 執行和呼叫 Lambda 函式
- 刪除 Lambda 函式
- 使用 Amazon API Gateway
- Lambda 函式與 Amazon S3
- Lambda 函式與 Amazon DynamoDB
- Lambda 函式與計劃事件
- Lambda 函式與 Amazon SNS
- Lambda 函式與 CloudTrail
- Lambda 函式與 Amazon Kinesis
- Lambda 函式與自定義使用者應用程式
- AWS Lambda@Edge 與 CloudFront
- 使用 CloudWatch 進行監控和故障排除
- AWS Lambda - 附加示例
- AWS Lambda 有用資源
- AWS Lambda - 快速指南
- AWS Lambda - 有用資源
- AWS Lambda - 討論
使用 CloudWatch 進行監控和故障排除
在 AWS Lambda 中建立的函式由 Amazon CloudWatch 監控。它有助於記錄觸發 Lambda 函式時對其發出的所有請求。
假設以下程式碼已上傳到 AWS Lambda,函式名稱為 **lambda and cloudwatch**。
exports.handler = (event, context, callback) => { // TODO implement console.log("Lambda monitoring using amazon cloudwatch"); callback(null, 'Hello from Lambda'); };
測試或觸發函式時,您應該在 CloudWatch 中看到一個條目。為此,請轉到 AWS 服務並單擊 CloudWatch。

從左側選擇日誌。

單擊 **日誌** 後,它包含您帳戶中建立的 AWS Lambda 函式的 **日誌組**。選擇任何 AWS Lambda 函式並檢查詳細資訊。在這裡,我們指的是名為 **lambdaandcloudwatch** 的 Lambda 函式。此處顯示新增到 Lambda 函式的日誌,如下所示:

現在,讓我們向 Lambda 函式新增 S3 觸發器,並檢視 CloudWatch 中的日誌詳細資訊,如下所示:

讓我們更新 AWS Lambda 程式碼以顯示上傳的檔案和儲存桶名稱,如下面的程式碼所示:
exports.handler = (event, context, callback) => { // TODO implement console.log("Lambda monitoring using amazon cloudwatch"); const bucket = event.Records[0].s3.bucket.name; const filename = event.Records[0].s3.object.key; const message = `File is uploaded in - ${bucket} -> ${filename}`; console.log(message); callback(null, 'Hello from Lambda'); };
現在,在 **s3storetestlambdaEventbucket** 中新增檔案,如下所示:

上傳檔案後,AWS Lambda 函式將被觸發,並且來自 Lambda 程式碼的控制檯日誌訊息將顯示在 CloudWatch 中,如下所示:

如果出現任何錯誤,CloudWatch 將顯示錯誤詳細資訊,如下所示:

請注意,我們在 AWS Lambda 程式碼中錯誤地引用了儲存桶名稱,如下所示:
exports.handler = (event, context, callback) => { // TODO implement console.log("Lambda monitoring using amazon cloudwatch"); const bucket = event.Records[0].bucket.name; const filename = event.Records[0].s3.object.key; const message = `File is uploaded in - ${bucket} -> ${filename}`; console.log(message); callback(null, 'Hello from Lambda'); };
事件中的儲存桶名稱引用錯誤。因此,我們應該看到 CloudWatch 中顯示的錯誤,如下所示:

CloudWatch 指標
可以在指標中檢視 Lambda 函式執行的詳細資訊。單擊左側顯示的 **指標**。


lambda 函式 **lambdaandcloudwatch** 的圖形詳細資訊如下所示:



它提供了 Lambda 函式執行的持續時間、呼叫次數以及 Lambda 函式的錯誤等詳細資訊。