搭配使用 AWS Lambda 與 Amazon CloudWatch Logs - AWS Lambda

搭配使用 AWS Lambda 與 Amazon CloudWatch Logs

您可以使用 Lambda 函數來監控和分析 Amazon CloudWatch Logs 日誌串流中的日誌。建立一或多個日誌串流的訂閱,以在建立日誌或符合選用模式時叫用函數。使用函數來傳送通知或將日誌保存到資料庫或儲存體。

CloudWatch Logs 會透過包含日誌資料的事件,非同步叫用您的函式。資料欄位的值是 Base64 編碼的 ZIP 存檔。

範例 Amazon CloudWatch Logs 訊息事件

{ "awslogs": { "data": "ewogICAgIm1lc3NhZ2VUeXBlIjogIkRBVEFfTUVTU0FHRSIsCiAgICAib3duZXIiOiAiMTIzNDU2Nzg5MDEyIiwKICAgICJsb2dHcm91cCI6I..." } }

若已解碼並解壓縮,日誌資料為具有下列結構的 JSON 文件。

範例 Amazon CloudWatch Logs 訊息資料 (已解碼)

{ "messageType": "DATA_MESSAGE", "owner": "123456789012", "logGroup": "/aws/lambda/echo-nodejs", "logStream": "2019/03/13/[$LATEST]94fa867e5374431291a7fc14e2f56ae7", "subscriptionFilters": [ "LambdaStream_cloudwatchlogs-node" ], "logEvents": [ { "id": "34622316099697884706540976068822859012661220141643892546", "timestamp": 1552518348220, "message": "REPORT RequestId: 6234bffe-149a-b642-81ff-2e8e376d8aff\tDuration: 46.84 ms\tBilled Duration: 100 ms \tMemory Size: 192 MB\tMax Memory Used: 72 MB\t\n" } ] }

如需使用 CloudWatch Logs 做為觸發程序的範例應用程式,請參閱 適用於 AWS Lambda 的錯誤處理器範例應用程式