AWS Lambda超时时获取通知

问题描述 投票:7回答:3

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

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

amazon-web-services aws-lambda
3个回答
2
投票

当日志中显示某个消息时,您可以让CloudWatch触发警报。我似乎无法找到任何关于此的官方文档,但您在CloudWatch Logs中创建了“Metric Filter”,然后您可以从中创建警报。 This blog post似乎很好地描述了这个过程。


1
投票

根据the docs,超时应该在错误度量标准中。我观察到计数的奇怪行为(例如,错误计数为0.5)。因此,我为错误计数> 0(不是> = 1)制作了CloudWatch警报。

您也可以使用REPORT消息或使用

Task timed out after 25.00 seconds

可以在Cloudwatch日志中找到。


0
投票

您可以在函数内检查剩余多少毫秒,如果您的函数即将超时,则从那里发送通知。

来自文档:

context.getRemainingTimeInMillis()

返回当前正在执行的Lambda函数的大致剩余执行时间(发生超时之前)。超时是Lambda函数配置之一。超时到达时,AWS Lambda将终止您的Lambda函数。

您可以使用此方法检查函数执行期间的剩余时间,并在运行时采取适当的纠正措施。

© www.soinside.com 2019 - 2024. All rights reserved.