值超过阈值时不会触发基于Kinesis指标的Cloudwatch警报

时间:2019-12-18 02:06:03

标签: amazon-cloudwatch amazon-kinesis cloudwatch-alarms

问题说明

我们有一个AWS Cloudwatch警报,它很明显超过了正在监控的指标图中指示的阈值行,但没有触发。

enter image description here

这是怎么回事?

>警报如何清楚地超过阈值的时间长于警报的时间段和评估时间?

警报配置和清空历史记录

enter image description here

1 个答案:

答案 0 :(得分:1)

如果我们查看警报的设置,则需要注意两个非常有趣的事情。

enter image description here

第一个有趣的事情是,对于连续的折线图,警报处于Insufficient Data状态。

第二个是将警报配置为秒,单位为秒,并且上图显示了毫秒。实际上,如果我们列出了迭代器使用期限的一组指标

aws cloudwatch get-metric-statistics --namespace "AWS/Lambda" --metric-name "IteratorAge" --dimensions Name=FunctionName,Value=prod-pipeline-rules-exec --statistics Maximum --start-time $(gdate -u -d '20 minutes ago' +%Y-%m-%dT%TZ) --end-time $(gdate -u +%Y-%m-%dT%TZ) --period 60 --region <region>
    [
        {
            "Timestamp": "2019-12-18T01:43:00Z",
            "Maximum": 2327.0,
            "Unit": "Milliseconds"
        },
        {
            "Timestamp": "2019-12-18T01:25:00Z",
            "Maximum": 2188.0,
            "Unit": "Milliseconds"
        },
        {
            "Timestamp": "2019-12-18T01:34:00Z",
            "Maximum": 2459.0,
            "Unit": "Milliseconds"
        }
    ]

单位是毫秒。

不幸的是,Cloudwatch会将单元不匹配视为丢失的数据,这将导致您的警报永不触发。