繁体   English   中英

当AWS Lambda函数失败时,如何获得更具体的CloudWatch警报?

[英]How can I get more specific CloudWatch alerts when an AWS Lambda function fails?

我在AWS Lambda的Node.js中都有各种功能。 它们是由某些事件触发的,例如S3触发器,API网关方法或有时只是手动调用。 我通过在控制台中粘贴代码或上传我在本地构建的zip文件来创建它们。

在极少数情况下,功能会失败。 为了检测故障,我设置了一个CloudWatch警报,如下所示:

CloudWatch警报

这在一定程度上有效:当我帐户中任何地方的某个功能失败时,我都会收到一封电子邮件。 问题是电子邮件仅指出警报已触发。 它没有说明什么 Lambda函数实际上失败了,所以我必须仔细研究Lambda才能找到哪个函数真正引起了警报。

我考虑过以下几点:

  1. 按功能设置CloudWatch警报。 这是最明显的解决方案,但也是最繁琐和最高的维护。
  2. 为我的Lambda函数构建CI / CD管道,而不是在控制台中输入代码或上传zip。 然后,我可以添加一个步骤,以自动为该功能设置CloudWatch警报。 这比第一种选择更好,但也为潜在的简单问题设置了许多基础结构。
  3. 使用另一个Lambda函数自定义处理警报。 问题是,据我所知,CloudWatch发布的SNS消息所包含的数据比电子邮件还多。 它实际上只是说“您的警报X跳闸了”,但不是为什么。

关于如何实现这一目标的任何想法?

我们在内部处理它。 出现问题时,Lambda尝试处理它,并发送警报。 CloudWatch指标仅适用于真正未处理的异常。 请记住,如果函数有错误,Lambda会自动重试,这在某些情况下是不希望的。 因此,最好处理Lambda函数内部的任何异常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM