在 AWS Lambda 超时时获取通知

Get notifications when AWS Lambda timesout

有没有办法在我的 AWS Lambda 函数超时时收到通知?

我找不到任何文档。目前唯一的方法是在 Cloudwatch 日志中搜索我拥有的所有 Lambda 函数的超时通知。有没有更好的方法?

您可以让 CloudWatch 在日志中出现特定消息时触发警报。我似乎找不到关于此的任何官方文档,但您在 CloudWatch Logs 中创建了一个 "Metric Filter",然后您可以从中创建一个警报。 This blog post 好像描述的过程不错

根据 the docs,错误指标中应包含超时。我观察到计数有奇怪的行为(例如,错误计数为 0.5)。因此,我为错误计数 > 0(不是 >= 1)发出了 CloudWatch 警报。

您还可以使用 REPORT 消息或

做一些事情
Task timed out after 25.00 seconds

可在 Cloudwatch 日志中找到。

我在 CloudWatch 中为类型为“Duration”的 Lambda 指标创建了一个警报,并选择了“Maximum”统计数据,以便在执行持续时间为 greater/equal 30000(= 30 秒)时提醒我配置了 30 秒超时的 Lambda 函数。

如果单次执行的持续时间(周期的“最大”)超过超时时间,您将收到通知。它对我来说很好用。