我的Prometheus设置中有一个警报,当someMetric > 100
对5m
有效时发送警报,然后根据以下配置每24h
重新发送警报:>
prometheus-alert.yml
- alert: TestAlert
expr: someMetric > 100
for: 5m
alertmanager-config.yml
repeat_interval: 24h
但是someMetric
的行为可以使其在100之上“稳定”(这意味着警报处于活动状态),但偶尔一次跌落到100以下,然后一次又一次爬回100.这将导致 active 警报变为非活动(已解决),然后在 pending 和 active 之后再次返回5分钟。这将导致Prometheus重新发送警报,这是我要避免的警报。
是否可以将Prometheus配置为具有类似于for: 5m
的功能,但对于转写 active -> inactive(已解决) ?
答案 0 :(得分:0)
在您的示例中,您可以使用aggregation-over-time promQL函数之一来“滤除”跌落到100以下的斑点吗?在您的情况下,听起来max可能有效?唯一的缺点是,一旦该值永久降至100以下,结束警报可能需要几分钟。
- alert: TestAlert
expr: max_over_time(someMetric[2m]) > 100
for: 5m