ale*_*sos 6 amazon-cloudwatch aws-lambda amazon-cloudwatch-metrics
我有一个触发每周运行的 Lambda,如果它连续 7 天不运行,我希望有一个 CloudWatch 警报。
我的想法是Alarm if < 1 invocation for 8 days但似乎不可能将其设置超过 24 小时:
警报评估期(数据点数乘以指标周期)不得超过 24 小时。
是否有另一种方法可以确保执行超过 24 小时的时间触发的 Lambda?
最长评估期为 24 小时。
您可以通过使用CloudWatch PutMetricData API创建自定义指标来解决这个问题。您可以发布自上次执行 lambda 函数以来经过的时间,然后在该值超过 8 天时发出警报。
这样做的一种方法是让您的 lambda 函数在每次触发时将执行时间戳存储到 DynamoDB。然后,您可以创建一个新函数,该函数将从 DynamoDB 读取该时间戳并将其与当前时间之间的差异发布到自定义指标(例如,每 1 小时触发一次 lambda)。
一旦有了新的自定义指标流动,您就可以创建一个警报,如果一个 1 小时数据点的值超过 8 天,就会触发该警报(这将解决您的初始问题)。您还可以将将缺失数据视为选项设置为坏 - 违反阈值(如果第二个 lambda 函数未触发,这将提醒您)。
您还应该针对CloudWatch Events 错误和Lambda 错误设置警报。如果调度或 lambda 本身出现问题,这将提醒您。但是我上面提到的自定义指标也会在人为错误的情况下提醒您,例如有人错误地禁用或删除了事件或功能。
| 归档时间: |
|
| 查看次数: |
2813 次 |
| 最近记录: |