Prometheusで取得している全メトリクス名を取得する方法

Prometheusで取得している全メトリクスの項目名を一覧で取得する必要があったので調べてみた。

やること

Prometheusサーバから全メトリクスの項目名をブラウザとCLIで取得する。

環境

# prometheus --version
prometheus, version 2.42.0 (branch: HEAD, revision: xxxxxx)

実践!

1.ブラウザから取得する。
 1-1.ブラウザで下記にアクセスする。
  http://[PrometheusサーバのIP]:[待ち受けポート]/api/v1/label/__name__/values
  例)
   http://192.168.10.163:9090/api/v1/label/__name__/values

  下記のように出力される。

{"status": "success", "data":
[":node_memory_MemAvailable_bytes:sum", "ALERT", "ALERTS_FOR_STATE", ・・・・・


  1行で出力されて見づらいので成形する。
  ※Google先生で[JSON成形]で検索するとよさげなサイトがでてきます。

  成形するとこんな感じ

{
    "status": "success",
    "data": [
        ":node_memory_MemAvailable_bytes:sum",
        "ALERTS",
        "ALERTS_FOR_STATE",
        "action_cable_active_connections",
        ・・・・
    ]
}



2.CLIで出力する
 2-1.Prometheusサーバに接続できる適当なサーバから下記コマンドを実行。
  ※Prometheusサーバから実行でも可

# curl http://192.168.10.163:9090/api/v1/label/__name__/values | jq '.data[]'
":node_memory_MemAvailable_bytes:sum"
"ALERTS"
"LERTS_FOR_STATE"
"action_cable_active_connections"
・・・



感想

前は見つからなかったが今回は簡単に見つかってよかった。。。( ̄д ̄)フー