サービスメトリック

サービスメトリックの投稿

サービスに紐づくメトリック(計測値)を Mackerel に送信します。

POST /api/v0/services/<serviceName>/tsdb

APIに対して過去の値を送信した場合、Mackerel上の値は上書きされます。24時間以上前の古いタイムスタンプで投稿した場合は、そのメトリックは記録されません(ステータスコード 200 でレスポンスを返します)。また、アラートの発生はMackerel上の最新の値に基づいて行われるため、そのデータが最新の値ではない場合には、閾値を超えていたとしてもアラートは発生しません。

APIキーに必要な権限

  • Read
  • Write

入力

[ <metricValue>, <metricValue>, … ]

<metricValue>: 以下のキーをもつオブジェクトです。

KEY TYPE DESCRIPTION
name string メトリック名([a-zA-Z0-9._-]+
time number エポック秒。
value number time 時点での計測値。

応答

成功時

{
  "success": true
}

失敗時

STATUS CODE DESCRIPTION
403 APIキーに書き込み権限がないとき / 許可されたIPアドレス範囲外からのアクセスの場合
429 分間のリクエスト数が過剰のとき。投稿頻度を1分間隔にする、複数のメトリックをまとめて投稿するなどの修正をお願いします。
200以外 上記以外のエラー

サービスメトリックの値の取得

サービスに紐づくメトリックの値を取得できます。

GET /api/v0/services/<serviceName>/metrics

APIキーに必要な権限

  • Read

入力(クエリパラメータ)

次のパラメータでメトリック名と取得する期間を指定します。

KEY TYPE DESCRIPTION
name string メトリック名。
from number メトリックを取得したい期間の最初 (epoch秒)
to number メトリックを取得したい期間の最後 (epoch秒)

応答

成功時

{
  "metrics": [
    {
      "time": <time>,
      "value": <value>
    },
    {
      "time": <time>,
      "value": <value>
    },
    …
  ]
}
  • 並び順は、時刻が古い順です
  • メトリックの時刻を表す <time> はエポック秒です

失敗時

STATUS CODE DESCRIPTION
404 サービスまたはメトリックが存在しない時
200以外 上記以外のエラー