変換統計APIの取得

変換の使用情報を取得します。

リクエスト

GET _transform/<transform_id>/_stats

GET _transform/<transform_id>,<transform_id>/_stats

GET _transform/_stats

GET _transform/_all/_stats

GET _transform/*/_stats

前提条件

次の権限が必要です:

  • クラスター: monitor_transform (transform_user ビルトインロールがこの権限を付与します)
  • 送信先インデックス: read, view_index_metadata.

説明

カンマ区切りの識別子リストまたはワイルドカード式を使用して、単一のAPIリクエストで複数の変換の統計を取得できます。_allを使用することで、すべての変換の統計を取得できます。*<transform_id>として指定するか、<transform_id>を省略することでも取得可能です。

パスパラメータ

  • <transform_id>
  • (オプション、文字列) 変換の識別子。変換識別子またはワイルドカード式である必要があります。これらのオプションのいずれかを指定しない場合、APIはすべての変換の情報を返します。

クエリパラメータ

  • allow_no_match
  • (オプション、ブール値) リクエスト時の動作を指定します:
    • ワイルドカード式を含み、一致する変換がない場合。
    • _all 文字列を含むか、識別子がない場合で、一致がない場合。
    • ワイルドカード式を含み、部分一致のみがある場合。
      デフォルト値はtrueで、一致がない場合は空のtransforms配列を返し、部分一致がある場合は結果のサブセットを返します。
      このパラメータがfalseの場合、一致がないか部分一致のみの場合、リクエストは404 ステータスコードを返します。
  • from
  • (オプション、整数) 指定された数の変換をスキップします。デフォルト値は0です。
  • size
  • (オプション、整数) 取得する最大の変換数を指定します。デフォルト値は100です。

レスポンスボディ

APIは、id値で昇順にソートされた変換の統計オブジェクトの配列を返します。これらのプロパティはすべて情報提供用であり、その値を更新することはできません。

  • checkpointing
  • (オブジェクト) チェックポイントに関する統計を含みます。

    1. - `````changes_last_detected_at
    • (日付) ソースインデックスで最後に変更が検出されたタイムスタンプ。
    • last
    • (オブジェクト) 最後に完了したチェックポイントに関する統計を含みます。
      1. - `````checkpoint
      • (整数) チェックポイントのシーケンス番号。
      • time_upper_bound_millis
      • (日付) 時間ベースの同期を使用する場合、このタイムスタンプはチェックポイントに含まれるデータの上限を示します。
      • timestamp_millis
      • (日付) チェックポイントのタイムスタンプで、チェックポイントが作成された時点を示します。
    • last_search_time
    • (日付) ソースインデックスでの最後の検索のタイムスタンプ。このフィールドは、変換が実行中の場合のみ表示されます。
    • next
    • (オブジェクト) 現在進行中の次のチェックポイントに関する統計を含みます。このオブジェクトは、変換stateindexingの場合にのみ表示されます。
      1. - `````checkpoint
      • (整数) チェックポイントのシーケンス番号。
      • checkpoint_progress
      • (オブジェクト) チェックポイントの進行状況に関する統計を含みます。たとえば、total_docsdocs_remainingpercent_completedocs_processeddocs_indexedをリストします。この情報は、バッチ変換および連続変換の最初のチェックポイントにのみ利用可能です。
      • time_upper_bound_millis
      • (日付) 時間ベースの同期を使用する場合、このタイムスタンプはチェックポイントに含まれるデータの上限を示します。
      • timestamp_millis
      • (日付) チェックポイントのタイムスタンプで、チェックポイントが作成された時点を示します。
    • operations_behind
    • (整数) ソースインデックスで発生したが、まだ送信先インデックスに適用されていない操作の数。高い数値は、変換が追いついていないことを示す可能性があります。
  • health

  • (オブジェクト) この変換の健康指標。
    1. - `````status
    • (文字列) この変換の健康状態。状態は次のとおりです:
      • green: 変換は正常です。
      • unknown: 変換の健康状態を判断できませんでした。
      • yellow: 変換の機能が劣化しており、健康状態がredになるのを避けるために修復が必要です。
      • red: 変換は停止中または使用できません。
    • issues
    • (オプション、配列) 健康でない状態が返された場合、変換の問題のリストを含みます。
      1. - `````issue
      • (文字列) 問題の説明。
      • details
      • (オプション、文字列) 問題の詳細。
      • count
      • (整数) 問題が発生してからの回数。
      • first_occurrence
      • (オプション、日付) この問題が初めて発生したタイムスタンプ。
  • id
  • (文字列) 変換の識別子。

  • node

  • (オブジェクト) 開始された変換のみ、変換が開始されたノード。
    1. - `````attributes
    • (オブジェクト) ノードの属性のリスト。
    • ephemeral_id
    • (文字列) ノードのエフェメラルID。
    • id
    • (文字列) ノードの一意の識別子。たとえば、”0-o0tOoRTwKFZifatTWKNw”。
    • name
    • (文字列) ノードの名前。たとえば、0-o0tOo
    • transport_address
    • (文字列) トランスポートHTTP接続が受け入れられるホストとポート。たとえば、127.0.0.1:9300
  • reason
  • (文字列) 変換がfailed状態の場合、このプロパティは失敗の理由に関する詳細を提供します。
  • state
  • (文字列) 変換の状態で、次のいずれかの値を取ることができます:

    • aborting: 変換は中止しています。
    • failed: 変換が失敗しました。失敗の詳細については、理由フィールドを確認してください。
    • indexing: 変換はデータを処理中で、新しいドキュメントを作成しています。
    • started: 変換は実行中ですが、データを積極的にインデックス化していません。
    • stopped: 変換は停止しました。
    • stopping: 変換は停止中です。
  • stats

  • (オブジェクト) 変換に関する統計情報を提供するオブジェクト。
    1. - `````delete_time_in_ms
    • (長整数) 削除に費やした時間(ミリ秒)。
    • documents_deleted
    • (長整数) この変換の保持ポリシーにより、送信先インデックスから削除されたドキュメントの数。
    • documents_indexed
    • (長整数) 変換のために送信先インデックスにインデックスされたドキュメントの数。
    • documents_processed
    • (長整数) 変換のソースインデックスから処理されたドキュメントの数。
    • exponential_avg_checkpoint_duration_ms
    • (倍精度) チェックポイントの持続時間の指数移動平均(ミリ秒)。
    • exponential_avg_documents_indexed
    • (倍精度) インデックスされた新しいドキュメントの数の指数移動平均。
    • exponential_avg_documents_processed
    • (倍精度) 処理されたドキュメントの数の指数移動平均。
    • index_failures
    • (長整数) インデックス作成の失敗の数。
    • index_time_in_ms
    • (長整数) インデックス作成に費やした時間(ミリ秒)。
    • index_total
    • (長整数) インデックス操作の数。
    • pages_processed
    • (長整数) 処理された検索またはバルクインデックス操作の数。ドキュメントは個別ではなくバッチで処理されます。
    • processing_time_in_ms
    • (長整数) 結果の処理に費やした時間(ミリ秒)。
    • processing_total
    • (長整数) 処理操作の数。
    • search_failures
    • (長整数) 検索の失敗の数。
    • search_time_in_ms
    • (長整数) 検索に費やした時間(ミリ秒)。
    • search_total
    • (長整数) 変換のソースインデックスでの検索操作の数。
    • trigger_count
    • (長整数) スケジューラによってトリガーされた変換の回数。たとえば、スケジューラは、指定された間隔で更新を確認したり、新しいデータを取り込んだりするために変換インデクサをトリガーします。これは、frequency プロパティで指定された間隔です。

レスポンスコード

  • 404 (リソースが見つかりません)
  • allow_no_matchfalseの場合、このコードはリクエストに一致するリソースがないか、リクエストに対して部分一致のみがあることを示します。

次の例では、最初の5つの変換をスキップし、最大10件の結果の使用情報を取得します:

Python

  1. resp = client.transform.get_transform(
  2. transform_id="_stats",
  3. from_="5",
  4. size="10",
  5. )
  6. print(resp)

Ruby

  1. response = client.transform.get_transform(
  2. transform_id: '_stats',
  3. from: 5,
  4. size: 10
  5. )
  6. puts response

Js

  1. const response = await client.transform.getTransform({
  2. transform_id: "_stats",
  3. from: 5,
  4. size: 10,
  5. });
  6. console.log(response);

コンソール

  1. GET _transform/_stats?from=5&size=10

次の例では、変換の使用情報を取得します:

Python

  1. resp = client.transform.get_transform_stats(
  2. transform_id="ecommerce-customer-transform",
  3. )
  4. print(resp)

Ruby

  1. response = client.transform.get_transform_stats(
  2. transform_id: 'ecommerce-customer-transform'
  3. )
  4. puts response

Js

  1. const response = await client.transform.getTransformStats({
  2. transform_id: "ecommerce-customer-transform",
  3. });
  4. console.log(response);

コンソール

  1. GET _transform/ecommerce-customer-transform/_stats

APIは次の結果を返します:

コンソール-結果

  1. {
  2. "count" : 1,
  3. "transforms" : [
  4. {
  5. "id" : "ecommerce-customer-transform",
  6. "state" : "started",
  7. "node" : {
  8. "id" : "cpTIGMsVQ8Gqwqlxxxxxxx",
  9. "name" : "my.home",
  10. "ephemeral_id" : "5-L21nFsQxxxxxxxxxx-xx",
  11. "transport_address" : "127.0.0.1:9300",
  12. "attributes" : { }
  13. },
  14. "stats" : {
  15. "pages_processed" : 78,
  16. "documents_processed" : 6027,
  17. "documents_indexed" : 68,
  18. "documents_deleted": 22,
  19. "delete_time_in_ms": 214,
  20. "trigger_count" : 168,
  21. "index_time_in_ms" : 412,
  22. "index_total" : 20,
  23. "index_failures" : 0,
  24. "search_time_in_ms" : 353,
  25. "search_total" : 78,
  26. "search_failures" : 0,
  27. "processing_time_in_ms" : 8,
  28. "processing_total" : 78,
  29. "exponential_avg_checkpoint_duration_ms" : 97.30637923893185,
  30. "exponential_avg_documents_indexed" : 2.2064915040974062,
  31. "exponential_avg_documents_processed" : 179.89419945785045
  32. },
  33. "checkpointing" : {
  34. "last" : {
  35. "checkpoint" : 20,
  36. "timestamp_millis" : 1585344558220,
  37. "time_upper_bound_millis" : 1585344498220
  38. },
  39. "changes_last_detected_at" : 1585344558219
  40. },
  41. "health": {
  42. "status": "green"
  43. }
  44. }
  45. ]
  46. }