すべてのプロダクト
Search
ドキュメントセンター

:データの書き込み

最終更新日:Mar 28, 2026

POST /api/put を使用して、単一のリクエストで 1 つ以上のデータポイントを時系列データベース (TSDB) に書き込みます。

クイックスタート

以下の例では、curl を使用して 2 つのデータポイントを書き込みます。実行前にプレースホルダーの値を置き換えてください。

curl -X POST 'http://<your-tsdb-endpoint>/api/put?summary' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "metric": "sys.cpu.nice",
      "timestamp": 1346846400,
      "value": 18,
      "tags": {"host": "web01", "dc": "lga"}
    },
    {
      "metric": "sys.cpu.nice",
      "timestamp": 1346846400,
      "value": 9,
      "tags": {"host": "web02", "dc": "lga"}
    }
  ]'
プレースホルダー説明
<your-tsdb-endpoint>ご利用の TSDB インスタンスのアドレスtsdb.example.com:4242

エンドポイント

リクエストパスリクエストメソッド説明
/api/putPOST複数のデータポイントを一度に書き込みます

クエリパラメーター

応答フォーマットを制御するには、これらのパラメーターをリクエスト URL に追加します。

パラメーター必須デフォルト説明
summary未指定型いいえfalse成功および失敗した書き込みの件数を返します/api/put?summary
details未指定型いいえfalse失敗したデータポイントのカウントとエラー詳細を返します/api/put?details
sync_timeout整数いいえ0タイムアウト(ミリ秒単位)。0 の場合、タイムアウトは発生しません。/api/put?sync&sync_timeout=60000
ignoreErrors未指定型いいえfalse1 つのデータポイントの書き込みが失敗した場合でも、残りのデータポイントの書き込みを継続します/api/put?ignoreErrors
未指定型のパラメーターの場合、URL にそのパラメーターが含まれている限り、値に関係なく true とみなされます。たとえば、?summary=true および ?summary=false の両方で「まとめ」モードが有効になります。また、detailssummary の両方を指定した場合は、API は詳細情報を返します。

リクエストボディ

データポイントを JSON 配列として指定します。各要素は 1 つのデータポイントを表します。

パラメーター必須制約説明
metric文字列はい英字、数字、および - _ . / ( ) : , [ ] = ' #メトリック名sys.cpu.nice
timestampはいタイムスタンプ ルールUNIX タイムスタンプ(秒またはミリ秒)1346846400
value長整数、倍精度浮動小数点数、文字列、ブール値はい文字列値は最大 20 KB までデータポイントの値18"High CPU Load"true
tagsマップいいえ文字セットは metric と同じ;少なくとも 1 つのキーと値のペアが必要タグのキーと値のペア{"host": "web01", "dc": "lga"}
High-availability Edition では、メトリック名の長さは最大 255 バイトです。

文字列型でないタグは、自動的に文字列型に変換されます。

タイムスタンプのルール

TSDB は、タイムスタンプの数値に基づいて、それが秒単位かミリ秒単位かを自動的に判別します。/api/put および /api/query の両方で、同じルールが適用されます。

値の範囲単位対応する日付範囲
4,294,968 – 4,294,967,2951970-02-20 01:02:48 – 2106-02-07 14:28:15
4,294,967,296 – 9,999,999,999,999ミリ秒1970-02-20 01:02:47.296 – 2286-11-21 01:46:39.999
上記のいずれの範囲にも該当しない値無効

書き込みモードと応答

デフォルトでは、すべてのデータポイントの書き込みが成功した場合、POST /api/put は HTTP 204 ステータスコードを返し、レスポンスボディは空になります。追加の応答詳細を取得したり、個別の書き込み失敗を特定したりするには、クエリパラメーターを追加してください。

シンプルモード(デフォルト)

モードを指定せずにリクエストを送信します。

  • 成功時:HTTP 204、レスポンスボディなし

  • 失敗時:HTTP エラーコードおよびエラーメッセージ

オーバーヘッドを最小限に抑えたい一般的なモニタリングデータの送信にこのモードを使用します。

統計モード

成功および失敗の件数を取得するには、?summary を追加します。

POST /api/put?summary

応答パラメーター:

パラメーター説明
success整数正常に書き込まれたデータポイントの件数
failed整数書き込みに失敗したデータポイントの件数

応答例:

{
  "failed": 0,
  "success": 20
}
重要

統計モードでは、単一のリクエスト内のすべてのデータポイントがまとめて成功または失敗します。1 つでも書き込みが失敗した場合、failed の値はリクエスト内のデータポイントの総数と等しくなります。

書き込まれたデータポイントの件数を追跡したい場合にこのモードを使用します。

詳細モード

成功および失敗の件数に加えてエラー情報を取得するには、?details を追加します。詳細モードは統計モードの拡張です。

POST /api/put?details

応答パラメーター:

パラメーター説明
success整数正常に書き込まれたデータポイントの件数
failed整数書き込みに失敗したデータポイントの件数
errors配列最初に失敗したデータポイントとその失敗原因

応答例:

{
  "errors": [
    {
      "datapoint": {
        "metric": "sys.cpu.nice",
        "timestamp": 1365465600,
        "value": "NaN",
        "tags": {"host": "web01"}
      },
      "error": "Unable to parse value to a number"
    }
  ],
  "failed": 1,
  "success": 0
}
重要

詳細モードでは、単一のリクエスト内のすべてのデータポイントがまとめて成功または失敗します。errors 配列には、最初に失敗したデータポイントのみが含まれます。失敗したデータポイントの件数を確認するには、failed パラメーターを確認してください。

書き込み失敗の原因を特定したい場合にこのモードを使用します。

フォールトトレラントモード

1 つのデータポイントの書き込みが失敗しても、残りのデータポイントの書き込みを継続できるようにするには、?ignoreErrors を追加します。

POST /api/put?ignoreErrors

応答パラメーター:

パラメーター説明
success整数正常に書き込まれたデータポイントの件数
failed整数書き込みに失敗したデータポイントの件数
errors配列各失敗したデータポイントとその失敗原因
重要

統計モードおよび詳細モードとは異なり、フォールトトレラントモードではリクエストは原子的ではありません。1 つのデータポイントの失敗が他のデータポイントに影響を与えることはありません。errors 配列には、最初に失敗したデータポイントだけでなく、すべての失敗したデータポイントが含まれます。errors にリストされていないデータポイントは、正常に書き込まれています。

  • 一部(すべてではない)のデータポイントが失敗した場合:HTTP 200

  • 基盤となるストレージ障害などの重大なエラーにより、すべてのデータポイントが失敗した場合:200 以外のステータスコード

書き込まれるデータポイントの件数を最大化し、個々の失敗を別途処理したい場合にこのモードを使用します。

制限事項

時系列ごとの最大タグキー数

単一の時系列におけるタグキーの最大数は、インスタンスタイプによって異なります。

インスタンスタイプ最大タグキー数
mLarge16
Large16
3xLarge20
4xLarge20
6xLarge20
12xLarge20
24xLarge24
48xLarge24
96xLarge24

文字列値

文字列値には任意の文字を含めることができ、JSON 形式で保存できます。文字列値の最大サイズは 20 KB です。