absent() - Prometheusドキュメント

absent(v instant-vector)は、

  • 渡されたベクトルに何らかの要素があれば、空のベクトルを返す
  • 渡されたベクトルに何も要素がなければ、値1の1要素のベクトルを返す

これは、与えられたメトリック名とラベルの組み合わせに対応する時系列データがない場合のアラートのために便利である。

absent(nonexistent{job="myjob"})
# => {job="myjob"}
 
absent(nonexistent{job="myjob",instance=~".*"})
# => {job="myjob"}
 
absent(sum(nonexistent{job="myjob"}))
# => {}

二つ目の例で、absent()は、入力ベクトルから1要素の出力ベクトルのラベルを賢く取り出そうとしている。

参考リンク

Prometheus: Up & Running: Infrastructure and Application Performance Monitoring

Prometheus: Up & Running: Infrastructure and Application Performance Monitoring