告警评估 - Amazon CloudWatch
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

告警评估

指标告警状态

指标告警可能具有以下几种状态:

  • OK – 指标或表达式在定义的阈值范围内。

  • ALARM – 指标或表达式超出定义的阈值。

  • INSUFFICIENT_DATA(数据不足) – 告警刚刚启动,指标不可用,或者指标没有足够的数据以确定告警状态。

告警评估状态

除了告警状态外,每个告警都有一个评估状态,用于提供告警评估过程的相关信息。可能会出现以下状态:

  • PARTIAL_DATA:表示由于配额限制,无法检索到所有可用数据。有关更多信息,请参阅 如何处理部分数据

  • EVALUATION_ERROR:表示告警设置中存在需要审查和更正的配置错误。有关更多详细信息,请参阅告警的 StateReason 字段。

  • EVALUATION_FAILURE:表示 CloudWatch 出现临时问题。我们建议在问题得到解决之前进行手动监控

您可以在控制台的告警详细信息中查看评估状态,也可以使用 describe-alarms CLI 命令或 DescribeAlarms API 来查看评估状态。

告警评估设置

创建告警时,请指定三个设置,以启用 CloudWatch 评估在何时更改告警状态:

  • 时间段是为了创建警报的各个数据点,而评估指标或表达式所用的时间长度。它以秒为单位。

  • Evaluation Periods(评估期)是确定告警状态时要评估的最近时间段或数据点的数量。

  • Datapoints to Alarm(触发告警的数据点数)是评估期内必须违例才能触发告警变为 ALARM(告警)状态的数据点数量。超出阈值的数据点不必是连续的,但它们必须全部在等于 Evaluation Period(评估期)的最近几个数据点范围内。

对于任何一分钟或更长的时间段,每分钟评估一次告警,评估基于周期评估周期定义的时段。例如,如果周期为 5 分钟(300 秒),评估周期为 1,则在第 5 分钟结束时,告警将根据从 1 到 5 分钟的数据进行评估。然后,在第 6 分钟结束时,根据第 2 分钟到 6 分钟的数据对告警进行评估。

如果警报周期为 10 秒、20 秒或 30 秒,则每 10 秒评估一次警报。有关更多信息,请参阅 高精度告警

如果评估周期数乘以每个评估周期的长度得到的结果超过一天,则每小时评估一次警报。有关如何评估此类多天告警的更多详细信息,请参阅 评估多天警报的示例

在下图中,指标告警的阈值设置为三个单位。Evaluation Periods(评估期)Datapoints to Alarm(触发告警的数据点数)均为 3。也就是说,在最近三个连续评估期中的所有现有数据点都高于阈值时,告警就会变为 ALARM(告警)状态。在该图中,在第三个到第五个时间段发生了这种情况。在第六个时间段,数值降至阈值以下,因此其中一个时间段被评估为未违例,且告警状态恢复为 OK(正常)。在第九个时间段,再次超出阈值,但仅一个时间段超出阈值。因此,告警状态保持为 OK(正常)。

触发告警的阈值

在将 Evaluation Periods(评估期)Datapoints to Alarm(触发告警的数据点数)配置为不同的值时,您将设置“M(最大为 N)”告警。告警的数据点数为(“M”),评估期为(“N”)。评估周期是指评估次数乘以每个周期长度所得的数值。例如,如果为 1 分钟的评估期配置 4 个数据点(最大为 5 个数据点),则评估间隔为 5 分钟。如果为 10 分钟的评估期配置 3 个数据点(最大为 3 个数据点),则评估间隔为 30 分钟。

注意

如果创建告警后不久便有数据点缺失,并且该指标在您创建告警之前便已报告给 CloudWatch,则 CloudWatch 在评估告警时会检索从创建告警之前算起的最近数据点。

高精度告警

如果对高精度指标设置告警,则您可以指定 10 秒、20 秒或 30 秒时长的高精度告警。高精度告警的费用较高。有关高精度指标的更多信息,请参阅 发布自定义指标

评估多天警报的示例

如果评估周期数乘以每个评估周期的长度得到的结果超过一天,则警报为多天警报。多天警报每小时评估一次。在评估多天警报时,CloudWatch 在评估时仅考虑截至当前小时 00 分的指标。

例如,假设有一个警报会监测每隔 3 天在 10:00 运行一次的作业。

  1. 10:02,作业失败

  2. 在 10:03,警报会进行评估并保持 OK 状态,原因是评估只考虑截至 10:00 的数据。

  3. 在 11:03,警报会考虑 11:00 之前的数据并转为 ALARM 状态。

  4. 您在 11:43 更正了错误,作业现在成功运行。

  5. 12:03,警报再次进行评估,检测到作业正在成功运行,然后返回到 OK 状态。