AWS Lambda超时时获取通知

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AWS Lambda超时时获取通知相关的知识,希望对你有一定的参考价值。

有没有办法在我的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日志中找到。

另一答案

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

来自文档:

context.getRemainingTimeInMillis()

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

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

以上是关于AWS Lambda超时时获取通知的主要内容,如果未能解决你的问题,请参考以下文章

如何在 aws lambda 超时时释放 resdhift 资源?

带有Java的AWS Lambda无法从S3获取文件

AWS Beanstalk - 创建新环境时向 Lambda 发送 SNS 通知

使用AWS Lambda接收youtube推送通知

使用 AWS Pinpoint 通过 Lambda 函数发送通知

如何在超出超时时阻止NodeJS脚本崩溃