LoginSignup
1
0

More than 3 years have passed since last update.

Prometheus: 対象ジョブが全部死んでることを表現する式

Last updated at Posted at 2019-07-24

up メトリクス自体が無いというケース

Prometheus ターゲットにはup{job="jobname"} というヘルスチェック用メトリクスが生えているが、
これを使って 「up == 1 (running) な jobname が存在しない」という意味の式
count(up{job="jobname"} == 1) == 0 を書いたとする。

これは jobname が全て死んだとき true を返さない。
というのも jobname が全て死んでいる時 Prometheus は up{job="jobname"} にマッチするメトリクスを収集できておらず、
count(up{job="jobname"} == 1)no data を返してしまうから。

absent()

ではどうすればいいのかというと、メトリクス自体が存在しない場合を表現するには absent() という関数を使えばよい。

これを使えば、「up{job="jobname"} が全く存在しない」という意味の式
absent(up{job="jobname"}) を書くことができる。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0