我想对无法调用的 Amazon CloudWatch 警报进行故障排除。
简短描述
CloudWatch 警报根据警报评估时可用的数据点来评估指标。标准警报每分钟评估一次,高精度警报每 10 秒评估一次。如果在指定窗口中收集的数据点未超过阈值,则警报将保持在 OK(正常)状态。
**注意:**窗口是 CloudWatch 分析数据以确定是否调用警报的时间间隔。评估期的时间和数量将窗口定义为时间间隔。
以下是无法调用警报的可能原因:
- Amazon CloudWatch 警报刚刚开始。
- 对于事件驱动的定期指标,如果在评估期内未将数据点推送到指标,则可能不会调用警报。
- 该指标不可用。
- 指标参数(例如 namespace(命名空间)、metric name(指标名称)或 dimensions(维度))配置错误。
- 该指标没有足够的数据来确定警报状态。
解决方法
检查指标筛选器配置
对于由指标筛选器创建的指标,请检查以下内容:
- 如果您使用基于 CloudWatch Logs 的指标筛选器,请确保生成预期的日志并正确定义筛选器。
- 检查日志事件是否包含指标筛选模式中的预期值。要确保模式符合预期,请根据示例日志事件测试该模式。
- 要确保配置正确的数学统计值,请检查警报配置。
使用“M out of N alarm(M/N 警报)”设置
**注意:**对于以下精度,M 表示高于调用警报所需阈值的连续数据点。N 表示评估期内的总数据点。
由于数据点持续流入 CloudWatch 指标,因此每次后续警报评估都可能使用不同的聚合数据点。稍后查看事件历史记录时,会出现一组完整的数据点。CloudWatch 警报使用评估时的可用数据点来评估指标。但是,在警报评估后可能会发布新的数据点。这些新数据点可能会影响指标数据。要解决此问题,请配置“M out of N alarm(M/N 警报)”,以便您的 CloudWatch 警报评估更多数据点。
示例场景:
配置 CPUUtilization 的 M/N 警报,其中 M 等于 2,N 等于 3,期限为 5 分钟。由于 N 等于 3,因此评估期为 15 分钟。由于 M 等于 2,因此,如果 CPUUtilization 在过去三个 5 分钟的期限中的两个期限内超过阈值,则会调用警报。
- 如果在 10 分钟时 CPUUtilization 为 85%,则警报低于 90% 的阈值。
- 如果在 15 分钟时 CPUUtilization 为 92%,则警报高于 90% 的阈值。
- 如果在 20 分钟时 CPUUtilization 为 94%,则警报高于阈值。之所以调用警报,是因为满足了在过去三个 5 分钟期限中的两个期限内超过阈值的要求。
要配置 M/N 警报设置,请完成以下步骤:
- 打开 CloudWatch 控制台。
- 在导航窗格中,选择 Alarms(警报),然后选择 All alarms(所有警报)。
- 找到并选择要配置为 M/N 的警报。
- 选择操作下拉菜单,然后选择 Edit(编辑)。
- 选择 Additional configuration(其他配置)。确保指定的第一个值小于第二个值。此配置确定了高于调用警报所需阈值的连续数据点的数量。
相关信息
当指标没有任何超过阈值的数据点时,为什么我的 CloudWatch 警报会启动?
聚合