我可以看到类似的消息
START RequestId: 3fcc8e32-8736-4c9c-ba8e-6c57b97837ff
和
END RequestId: 3fcc8e32-8736-4c9c-ba8e-6c57b97837ff
但是我知道我的lambda出现错误,导致lambda重试。我想知道是否存在任何默认的cloudwatch指标,或者在重试和不重试的情况下可以寻找哪些cloudwatch日志关键字。
答案 0 :(得分:1)
AWS Lambda将使用相同的请求ID重试异步调用。您也许可以使用Cloudwatch见解来检查重复的请求ID,以及其中是否有三个。三是异步请求的最大调用数。
更新
此CloudWatch insights query将显示Lambda调用,该调用具有多个相同的请求ID。因此,异步调用至少失败了一次。
stats count(*) as requestIdCount by @requestId
| filter @message like /START RequestId/
| filter requestIdCount > 1
示例输出
# @requestId requestIdCount
1 c0d5a65a-7db3-413e-8d1f-4b9da0f21a71 3
在Kinesis的情况下,Lambda是同步调用的,因此没有明确标识符可重试sdk的请求。尽管我认为解决方案是,将一个udid添加到写入Kinesis的数据中,然后在Lambda函数的日志中搜索与上面类似的内容。