0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Mackerel で特定ホストに最近投稿されているメトリックを全部出すワンライナー

Posted at

Mackerel でこのホストに投稿されているメトリック何があるかな、というのをシュッと出したいときありますよね。特にプラグイン開発してたり、AWSインテグレーションを設定した直後だったり、常には発生しないメトリックの様子を見たいとき。

GET/api/v0/tsdb/latest を使うと、メトリックの最新の値を全部引っ張ってくることができます。メトリック名は複数渡せるので、ホストに紐づいたメトリックを一気に渡しておきましょう。HOSTID と MACKEREL_APIKEY はいい感じに設定してください。

hostid=$HOSTID
curl -H "X-Api-Key: $MACKEREL_APIKEY" -X GET "https://mackerel.io/api/v0/tsdb/latest?hostId=$hostid&name=$(curl -H "X-Api-Key: $MACKEREL_APIKEY" -X GET "https://mackerel.io/api/v0/hosts/$hostid/metric-names"  | jq -r '.names | join("&name=")' )"  | jq .

こんな感じでずらっと出ます

{
  "tsdbLatest": {
    "HOSTID": {
      "filesystem.disk3s1s1.used": {
        "time": 1655352000,
        "value": 25109454848
      },
      "interface.en5.rxBytes.delta": {
        "time": 1655352000,
        "value": 0
      },
      "interface.gif0.rxBytes.delta": {
        "time": 1655352000,
        "value": 0
      },
      "interface.ap1.txBytes.delta": {
        "time": 1655352000,
        "value": 0
      },
      ...
      "memory.free": {
        "time": 1655352000,
        "value": 1406883157.3333333
      }
    }
  }
}

メトリックが多い場合はURL長の制限に引っかかるかもしれないので適宜分割してください。

筆者は GNU coreutils を使っているので、macOS の場合は微妙にオプションが違ったりするかもしれません。

0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?