【问题标题】:AWS CloudWatch alarm for Lambda InvocationLambda 调用的 AWS CloudWatch 警报
【发布时间】:2021-10-03 11:52:21
【问题描述】:

我想根据“调用”指标监控 Lambda 函数。具体来说,我希望警报至少在没有被调用一次时触发。我已经设置了以下警报,但它在 24 小时内没有触发。我已经确保 Lambda 也没有触发,但是这个警报永远不会进入“警报”状态。任何建议都会有所帮助。

Threshold: Invocations < 1 for 1 datapoints within 5 minutes
Statistic: Sum
Period: 5 minutes
Metric Name: Invocations
Namespace: AWS/Lambda
Datapoints to alarm: 1 out of 1

【问题讨论】:

  • 您如何配置它来处理丢失的数据? Invocations 指标仅在存在调用时写入(即它不会写入值 0
  • 啊,有道理。我将丢失的数据视为“notBreaching”。我猜这就是警报没有触发的原因?
  • 是的,我想这就是原因。
  • @PMah 问题在于它总是处于警报状态。当 Lambda 被调用一次时,ALARM 将进入 OK 状态,但在评估期结束后,它将返回 ALARM 状态。必须想出一种不同的方法来做到这一点。

标签: amazon-web-services aws-lambda amazon-cloudwatch


【解决方案1】:

Invocations 指标仅在存在调用时写入(即它不会写入值 0)。

因此,对于此类用例,您希望在未写入指标时触发警报,您​​需要将其配置为将丢失的数据视为breaching。 p>

这方面的文档是here

【讨论】:

  • 问题在于它总是处于 ALARM 状态。调用一次 Lambda 后,ALARM 将进入 OK 状态,但在评估期结束后,它将返回 ALARM 状态。
  • 这不是你想要的吗?我从您的问题中假设您想在过去 5 分钟内未调用它时发出警报。我认为不可能检查它是否被调用过,因为允许的最长评估期是一天。
  • 我有一个每天都会调用的 Lambda 函数。我想要一个警报,告诉我那天什么时候没有调用 Lambda 函数。
  • 好的,这种情况下你可以设置你的评估期为一天,当Lambda函数一天或更长时间没有被调用时它会报警。这不是完全相同,但我认为它尽可能接近。
猜你喜欢
  • 1970-01-01
  • 2022-11-30
  • 2021-05-25
  • 2019-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-28
  • 2021-10-19
相关资源
最近更新 更多