View a markdown version of this page

PromQL 警报 - Amazon CloudWatch

PromQL 警报

PromQL 警报使用 Prometheus 查询语言(PromQL)即时查询来监控指标。该查询选择通过 CloudWatch OTLP 端点摄取到的指标,该查询返回的所有匹配时间序列都被视为违规。警报会定期评估查询,并以贡献者的身份独立跟踪每个违规的时间序列。

有关使用 OpenTelemetry 摄取指标的信息,请参阅 OpenTelemetry

PromQL 警报的工作原理

PromQL 警报按照 EvaluationInterval 定义的周期性计划评估 PromQL 即时查询。该查询仅返回满足条件的时间序列。返回的每个时间序列都是贡献者,由其唯一的属性集标识。

警报使用基于持续时间的状态转换:

  • 如果查询返回贡献者,该贡献者将被视为违规。如果该贡献者在 PendingPeriod 指定的持续时间内继续违规,则会转换为 ALARM 状态。

  • 如果查询停止返回贡献者,该贡献者将被视为恢复。如果贡献者在 RecoveryPeriod 指定的持续时间内一直缺席,则会转换回 OK 状态。

当至少有一名贡献者违规的时间超过待处理周期限时,警报将处于 ALARM 状态。所有贡献者都恢复后,警报将恢复为 OK 状态。

PromQL 警报配置

PromQL 警报配置有以下参数:

  • PendingPeriod 是贡献者在转换为 ALARM 状态之前必须持续违规的时间(以秒为单位)。这相当于 Prometheus 警报规则的 for 持续时间。

  • RecoveryPeriod 是贡献者在转换回 OK 状态之前必须停止违规的持续时间(以秒为单位)。这相当于 Prometheus 警报规则的 keep_firing_for 持续时间。

  • EvaluationInterval 是警报评估 PromQL 查询的频率(以秒为单位)。

要创建 PromQL 警报,请参阅使用 PromQL 查询创建警报