Yaml 定义普罗米修斯警报的缺失

Yaml 定义普罗米修斯警报的缺失,yaml,prometheus,metrics,prometheus-alertmanager,Yaml,Prometheus,Metrics,Prometheus Alertmanager,我对普罗米修斯的警报设置方式取决于另一个警报的值的缺失: - alert: Some_Alert expr: | round(some_expr) > 24 AND ALERTS{alertname="Empty_Source_Data_Load"} != 1 我只想在第一个表达式为true且空\u源\u数据\u加载警报不存在时计算某些警报值(这意味着存在数据)。如何使用缺席方法执行此操作?您不会使用缺席,而是使用二进制运算符 向量1,除非向量2产生由

我对普罗米修斯的警报设置方式取决于另一个警报的值的缺失:

  - alert: Some_Alert
    expr: |
      round(some_expr) > 24
      AND ALERTS{alertname="Empty_Source_Data_Load"} != 1

我只想在第一个表达式为true且
空\u源\u数据\u加载
警报不存在时计算
某些警报
值(这意味着存在数据)。如何使用缺席方法执行此操作?

您不会使用
缺席
,而是使用二进制运算符

向量1,除非向量2产生由元素组成的向量 向量2中没有元素的向量1的 匹配标签集。两个向量中的所有匹配元素都将被删除

该警报类似于以下内容(带有
ON()
子句):


此表达式中是否需要
(ON)
子句?看起来表达式在没有它的情况下可能会工作。这取决于两边的标签。如果没有它,标签集必须与警报匹配才能生效。我以为不是这样,但你会知道的。
  - alert: Some_Alert
    expr: |
      round(some_expr) > 24
      UNLESS ON() ALERTS{alertname="Empty_Source_Data_Load"}