Prometheus: 表达所有工作都已经停止的表达式
没有度量指标的情况
假设 Prometheus 的目标是生成了一个名为 up{job=”jobname”} 的健康检查指标,我们可以使用它来表示 “存在 up==1 (正在运行) 的 jobname 不存在”,即 count(up{job=”jobname”} == 1) == 0。
当所有的 jobname 均已停止时,它将不会返回 true。
这是因为当所有的 jobname 均已停止时,Prometheus 将无法收集与 up{job=”jobname”} 匹配的指标,
而 count(up{job=”jobname”} == 1) 将返回 no data。
离席() (lí xí)
若要表达度量指标本身不存在的情况,可以使用名为absent()的函数。
使用这个可以写出表示”up{job=’jobname’}完全不存在”的表达式absent(up{job=”jobname”} )。