将 Lambda 与日志一起使用 CloudWatch - Amazon Lambda
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

将 Lambda 与日志一起使用 CloudWatch

您可以使用 Lambda 函数来监控和分析来自 Amazon 日志流的 CloudWatch 日志。为一个或多个日志流创建订阅,以在创建日志时调用函数或匹配可选模式。使用函数发送通知或将日志保存到数据库或存储。

CloudWatch Logs 使用包含日志数据的事件异步调用您的函数。数据字段的值是 Base64 编码的 .gzip 文件存档。

例 CloudWatch 记录消息事件
{ "awslogs": { "data": "ewogICAgIm1lc3NhZ2VUeXBlIjogIkRBVEFfTUVTU0FHRSIsCiAgICAib3duZXIiOiAiMTIzNDU2Nzg5MDEyIiwKICAgICJsb2dHcm91cCI6I..." } }

在解码和解压缩后,日志数据为具有以下结构的 JSON 文档。

例 CloudWatch 记录消息数据(已解码)
{ "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: 47 ms \tMemory Size: 192 MB\tMax Memory Used: 72 MB\t\n" } ] }

有关使用 CloudWatch 日志作为触发器的示例应用程序,请参阅Amazon Lambda 错误处理器示例应用程序