【问题标题】:Time based alerts in prometheus alertmanagerprometheus alertmanager 中基于时间的警报
【发布时间】:2021-12-11 12:08:55
【问题描述】:

我想在 Prometheus alertmanager 中设置一个必须在给定时间之间触发的警报 例如:09:15 到 15:30 之间要检查的条件

【问题讨论】:

    标签: prometheus prometheus-alertmanager


    【解决方案1】:

    Prometheus 中的警报会定期评估,您无法真正为它们设置时间表。

    我认为可以通过一些 PromQL 功夫来实现:

    scalar(clamp(hour() > 9 and hour() < 15, 1, 1)) * <alert_promql>

    hour() > 9 and hour() < 15根据一天中的小时定义时间范围(您也可以添加分钟)

    clamp(..., 1, 1) 确保值为 1 而不是别的

    * - 这就是魔法发生的地方。 如果我们从前一个函数中得到任何值,它将是 1,所以乘以 1 对第二个表达式没有影响。 否则,第一个表达式没有级数,所以乘法无论如何都不会返回结果。

    【讨论】:

      猜你喜欢
      • 2020-05-19
      • 2022-07-13
      • 1970-01-01
      • 2016-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多