是否可以为指标组合设置CloudWatch警报?


19

例如,我要针对以下事件触发CloudWatch警报:

Number of messages sent- Number of messages deleted> = 6

上面是针对AWS SQS指标的。而且我希望该指标在触发警报时触发AWS Lambda。

有什么办法可以做到吗?如果没有,那么有什么解决方法 [针对无服务器范例]

[我想这样做,因为没有度量标准可以告诉我队列中当前(可用)的消息数]。因此,如果有一个指标可以给我带来帮助,那将非常有帮助


这是一个很好的问题,但是在大多数情况下,纯指标不足以设置警报,因此需要构建中间数量并将其导出到CloudWatch。例如,一组指标的最大值,指标的变化率,相对于目标值的增量。
Michael Le BarbierGrünewald'3

Answers:


8

对于最后一个总体目标,我将在SQSApproximateNumberOfMessagesVisible的Cloudwatch 文档中设置警报为:

可从队列中检索的消息数。

单位:计数

有效统计信息:平均值,最小值,最大值,总和,数据样本(在Amazon SQS控制台中显示为“样本计数”)


对于更通用的计算指标问题,我将使用lambda定期运行,从cloudwatch收集指标,进行数学运算并返回到cloudwatch。

是一个示例lambda从Cloudwatch收集数据以推送到Elasticsearch。通过文档中的示例,您应该能够从lambda推回指标。

请注意,当您每月收到超过1M的请求时,调用cloudwatch API收集和推送指标会产生一定的成本,还有其他一些限制需要注意,以免破坏预算/工作流程。


谢谢(+1)。几分钟后,我想出了:D。但是,我不确定其中的术语Approximate。为什么能估算出可用消息的确切数量?
Dawny33

由于指标是定期提取的,因此它们不能保证在收集时间和演示时间之间队列没有变化。
Tensibai'3

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.