MetricBase 時系列 API

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:87分
  • MetricBase 時系列 API は、メトリックベース データベースに対してデータの挿入、情報の取得、変換の実行を行うためのエンドポイントを提供します。

    この API は、 メトリックベース プラグイン (com.snc.clotho) がインストールされ、アクティブ化されている場合にのみ使用できます。

    この API への書き込みに必要なロール:clotho_rest_put。

    このセクションの例は、MetricBase (com.snc.clotho) プラグインのデータを使用して作成されています。

    MetricBase 時系列 - GET /now/clotho/table/{table}/{subject}/{metric}

    指定された時系列データを メトリックベース データベースから取得します。

    URL 形式

    バージョニングされた URL:/api/now/{api_version}/clotho/table/{table}/{subject}/{metric}

    サポートされている要求パラメーター

    表 : 1. パスパラメーター
    名前 説明
    api_version
    metric 測定基準として使用する subject パラメーターで識別されるテーブルの列の名前。

    データタイプ:文字列

    subject この系列に関連付けられた GlideRecord の sys_id。

    データタイプ:文字列

    table この系列に関連付けられた GlideRecord を含むテーブルの名前。

    データタイプ:文字列

    表 : 2. クエリパラメーター
    名前 説明
    sysparm_display_value 他のラベルが指定されていない場合に、結果データに対象レコードの表示値のラベルを付けるかどうかを示すフラグ。
    有効な値:
    • true:結果データは対象レコードの表示値でラベル付けされます。
    • false:結果データは対象レコードの表示値でラベル付けされません。

    データタイプ:ブール

    デフォルト値:false

    sysparm_end 必須です。評価期間の終了時間。空または値がない場合は現在の時間として扱われます。時間値には、この終了時間が含まれます。

    データタイプ:文字列

    形式:ISO 8601 (UTC)、次のいずれか:
    • 絶対日付形式:[YYYY-MM-DDThh:mm:ss] (2019-03-20T17:04:55 など)
    • 現在の期間に相対的な形式:[P(n)Y(n)M(n)DT(n)H(n)M(n)S] (P1M など)
    sysparm_start 必須です。評価期間の開始時間。特別な値 all を使用すると、現在の時刻から指定した測定基準の最大保持期間を引いた時刻を開始時刻として設定できます。空または値がない場合は、暗黙的な allとして扱われます。時間値には、この開始時間が含まれます。

    データタイプ:文字列

    形式:ISO 8601 (UTC)、次のいずれか:
    • 絶対日付形式:[YYYY-MM-DDThh:mm:ss] (2019-03-20T17:04:55 など)
    • 現在の期間に相対的な形式:[P(n)Y(n)M(n)DT(n)H(n)M(n)S] (P1M など)
    表 : 3. 要求本文パラメーター (XML または JSON)
    名前 説明
    なし

    ヘッダー

    次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。

    表 : 4. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。application/json のみをサポートします。
    表 : 5. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。

    表 : 6. ステータスコード
    ステータスコード 説明
    200 成功。要求が正常に処理されました。
    401 権限がありません。ユーザー資格情報が間違っているか、渡されていません。
    500 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。

    応答本文のパラメーター (JSON または XML)

    名前 説明
    label この測定基準の結果セットを識別するために使用されるラベル。

    データタイプ:文字列

    seriesRef データ系列の結果。

    データタイプ:アレイ

    "seriesRef": [
      {
        "metric": "String",
        "subject": "String",
        "table": "String"
      }
    ]
    seriesRef.metric データ系列の取得元の測定基準の名前。metrics オブジェクトが要求で渡された場合にのみ表示されます。

    データタイプ:文字列

    seriesRef.subject データ系列レコードの sys_id。seriesRef.table で指定されたテーブルにあります。

    データタイプ:文字列

    seriesRef.table データ系列の取得元のテーブルの名前。

    データタイプ:文字列

    values 変換された系列値。

    データタイプ:アレイ

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    values.timestamp 値の ISO 8601 タイムスタンプ。

    データタイプ:文字列

    values.value 測定基準値。

    データタイプ:数値

    cURL 要求

    curl "https://instance.servicenow.com/api/now/v1/clotho/
      table/mb_demo_drone/626b051787333200a328c5b836cb0b99/
      mb_demo_mt_altitude?sysparm_start=2019-03-20T17%3A04%3A55
      &sysparm_end=2019-03-20T17%3A09%3A55" \
    --request GET \
    --header "Accept:application/json" \
    --user "username":"password"

    {
      "seriesRef": {
        "subject": "626b051787333200a328c5b836cb0b99",
        "table": "mb_demo_drone",
        "metric": "mb_demo_mt_altitude"
      },
      "label": "626b051787333200a328c5b836cb0b99:
                mb_demo_drone|mb_demo_mt_altitude",
      "values": [
        {
          "timestamp": "2019-03-20T17:05:00Z",
          "value": 83.150185
        },
        {
          "timestamp": "2019-03-20T17:06:00Z",
          "value": 83.46074
        },
        {
          "timestamp": "2019-03-20T17:07:00Z",
          "value": 83.83104
        },
        {
          "timestamp": "2019-03-20T17:08:00Z",
          "value": 84.260635
        },
        {
          "timestamp": "2019-03-20T17:09:00Z",
          "value": 84.749
        }
      ]
    }
    

    MetricBase 時系列 - GET /now/clotho/transform/{table}/{metric}

    指定されたパラメーターに基づいて、指定されたデータを変換します。

    URL 形式

    バージョニングされた URL:/api/now/{api_version}/clotho/transform/{table}/{metric}

    サポートされている要求パラメーター

    表 : 7. パスパラメーター
    名前 説明
    api_version
    metric 測定基準として使用する subject パラメーターで識別されるテーブルの列の名前。

    データタイプ:文字列

    table この系列に関連付けられた GlideRecord を含むテーブルの名前。

    データタイプ:文字列

    表 : 8. クエリパラメーター
    名前 説明
    sysparm_display_value 他のラベルが指定されていない場合に、結果データに対象レコードの表示値のラベルを付けるかどうかを示すフラグ。
    有効な値:
    • true:結果データは対象レコードの表示値でラベル付けされます。
    • false:結果データは対象レコードの表示値でラベル付けされません。

    データタイプ:ブール

    デフォルト値:false

    sysparm_end 必須です。評価期間の終了時間。空または値がない場合は現在の時間として扱われます。時間値には、この終了時間が含まれます。

    データタイプ:文字列

    形式:ISO 8601 (UTC)、次のいずれか:
    • 絶対日付形式:[YYYY-MM-DDThh:mm:ss] (2019-03-20T17:04:55 など)
    • 現在の期間に相対的な形式:[P(n)Y(n)M(n)DT(n)H(n)M(n)S] (P1M など)
    sysparm_query 対象レコードを検索するためのエンコードされたクエリ文字列。

    データタイプ:文字列

    デフォルト:なし

    sysparm_start 必須です。評価期間の開始時間。特別な値 all を使用すると、現在の時刻から指定した測定基準の最大保持期間を引いた時刻を開始時刻として設定できます。空または値がない場合は、暗黙的な allとして扱われます。時間値には、この開始時間が含まれます。

    データタイプ:文字列

    形式:ISO 8601 (UTC)、次のいずれか:
    • 絶対日付形式:[YYYY-MM-DDThh:mm:ss] (2019-03-20T17:04:55 など)
    • 現在の期間に相対的な形式:[P(n)Y(n)M(n)DT(n)H(n)M(n)S] (P1M など)
    sysparm_subject_limit 対象クエリ結果のサイズを制限します。

    データタイプ:数値

    デフォルト:10,000

    sysparm_transforms 変換のカンマ区切りリスト。
    有効な変換:
    • add
    • avg
    • label
    • mul
    • resample
    • sum
    • top

    データタイプ:文字列

    デフォルト:なし

    表 : 9. 要求本文パラメーター (XML または JSON)
    名前 説明
    なし

    ヘッダー

    次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。

    表 : 10. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。サポートされるタイプ:application/json または application/xml

    デフォルト: application/json

    表 : 11. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。

    表 : 12. ステータスコード
    ステータスコード 説明
    200 成功。要求が正常に処理されました。
    401 権限がありません。ユーザー資格情報が間違っているか、渡されていません。
    500 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。

    応答本文のパラメーター (JSON または XML)

    名前 説明
    label この測定基準の結果セットを識別するために使用されるラベル。

    データタイプ:文字列

    seriesRef データ系列の結果。

    データタイプ:アレイ

    "seriesRef": [
      {
        "metric": "String",
        "subject": "String",
        "table": "String"
      }
    ]
    seriesRef.metric データ系列の取得元の測定基準の名前。metrics オブジェクトが要求で渡された場合にのみ表示されます。

    データタイプ:文字列

    seriesRef.subject データ系列レコードの sys_id。seriesRef.table で指定されたテーブルにあります。

    データタイプ:文字列

    seriesRef.table データ系列の取得元のテーブルの名前。

    データタイプ:文字列

    values 変換された系列値。

    データタイプ:アレイ

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    values.timestamp 値の ISO 8601 タイムスタンプ。

    データタイプ:文字列

    values.value 測定基準値。

    データタイプ:数値

    cURL 要求

    curl "https://instance.servicenow.com/api/now/v1/clotho/
      transform/mb_demo_drone/mb_demo_mt_speed?
      sysparm_query=model%3DKingfisher%20Phantom&
      sysparm_start=2019-03-25T17%3A04%3A55&
      sysparm_end=2019-03-25T17%3A05%3A10" \
    --request GET \
    --header "Accept:application/json" \
    --user "username":"password"

    出力:

    [
      {
        "seriesRef": {
          "subject": "2a6b051787333200a328c5b836cb0b92",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "2a6b051787333200a328c5b836cb0b92:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 33.67892
          }
        ]
      },
      {
        "seriesRef": {
          "subject": "666b051787333200a328c5b836cb0b92",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "666b051787333200a328c5b836cb0b92:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 41.94985
          }
        ]
      },
      {
        "seriesRef": {
          "subject": "a26b051787333200a328c5b836cb0b92",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "a26b051787333200a328c5b836cb0b92:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 37.74187
          }
        ]
      },
      {
        "seriesRef": {
          "subject": "ea6b051787333200a328c5b836cb0b92",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "ea6b051787333200a328c5b836cb0b92:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 34.914192
          }
        ]
      },
      {
        "seriesRef": {
          "subject": "ee6b051787333200a328c5b836cb0b91",
          "table": "mb_demo_drone",
          "metric": "mb_demo_mt_speed"
        },
        "label": "ee6b051787333200a328c5b836cb0b91:mb_demo_drone
                 |mb_demo_mt_speed",
        "values": [
          {
            "timestamp": "2019-03-25T17:05:00Z",
            "value": 44.170887
          }
        ]
      }
    ]
    

    MetricBase 時系列 - POST /now/clotho/accumulate

    指定されたタイムスタンプの測定基準値を累積し、値を上書きするのではなく結果をデータベースに保存します。

    この API の使用:を使用して、電力のキロワット時 (kWh) など、合計して累積できる測定基準を処理します。累積では、指定されたタイムスタンプで各測定基準の呼び出しを行います。たとえば、ヒーター、電気ケトル、洗濯機用に収集されたキロワットは、蓄積の呼び出しが 3 回発生します。

    URL 形式

    バージョニングされた URL:/api/now/{api_version}/clotho/accumulate

    サポートされている要求パラメーター

    表 : 13. パスパラメーター
    名前 説明
    api_version オプションアクセスするエンドポイントのバージョン。たとえば、v1v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。

    データタイプ:文字列

    表 : 14. クエリパラメーター
    名前 説明
    default_value 指定されたタイムスタンプでの累積のデフォルト値。指定されたタイムスタンプの値が利用できない場合に、accumulate に対する最初の呼び出し中にのみ使用されます。

    ユースケースとして、total_power のワット測定基準の累積が考えられます。電力量計なしでコンセントに接続されたルーターのワット数を累積して測定する必要があります。消費値がわかっていて定数である場合は、定数値をデフォルト値として使用して total_power を累積できます。たとえば、ルーターが常に接続されていて、20 ワットを消費する場合は、20 を使用します。

    データタイプ:文字列

    デフォルト:0

    sysparm_ignore_unknown_series

    不明な系列を無視し、エラーを返さずにトランザクションを続行するかどうかを示すフラグ。

    有効な値:
    • true:不明な系列を無視します。
    • false:不明な系列を無視しません。

    デフォルト:true

    表 : 15. 要求本文パラメーター (XML または JSON)
    名前 説明
    seriesRef 更新するデータ系列情報を表す文字列のリスト。

    データタイプ:アレイ

    "seriesRef": [
      {
        "metric": "String",
        "subject": "String",
        "table": "String"
      }
    ]
    seriesRef.metric 必須です。更新する累積測定基準の名前。

    データタイプ:文字列

    seriesRef.subject 必須です。データを更新するレコードの sys_id。seriesRef.table で指定されたテーブルにあります。

    データタイプ:文字列

    seriesRef.table 必須です。データを保存するテーブルの名前。

    データタイプ:文字列

    values 必須です。累積して保存する系列値。同じタイムスタンプを持つ値は、 default_value クエリパラメーターで合計されます。

    データタイプ:アレイ

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    values.timestamp 必須です。値の ISO 8601 タイムスタンプ。

    データタイプ:文字列

    形式:YYYY-MM-ddTHH:mm:ddZ

    「Z」で表される文字は、ISO 形式のタイムスタンプで UTC タイムゾーンを示します。タイムスタンプ形式のこの部分はオプションです。

    例: 2019-03-21T17:05:00Z

    values.value 必須です。測定基準値。

    データタイプ:数値

    ヘッダー

    次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。

    表 : 16. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。application/json のみをサポートします。
    Content-Type 要求本文のデータ形式。application/json のみをサポートします。
    表 : 17. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。

    表 : 18. ステータスコード
    ステータスコード 説明
    200 成功。要求が正常に処理されました。
    401 権限がありません。ユーザー資格情報が間違っているか、渡されていません。
    500 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。

    応答本文のパラメーター (JSON または XML)

    名前 説明
    message 成功 (OK) またはエラーを示すメッセージ。

    cURL 要求

    この例は、指定されたタイムスタンプで測定基準値を累積する方法を示しています。

    curl "https://instance.servicenow.com/api/now/v1/clotho/accumulate" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
      \"seriesRef\": {
        \"subject\": \"3D666b051787333200a328c5b836cb0b92\",
        \"table\": \"power_monitoring\",
        \"metric\": \"total_power\"
      },
      \"values\": [
        {
          \"timestamp\": \"2019-03-21T17:05:00Z\",
          \"value\": 0.150185
        },
        {
          \"timestamp\": \"2019-03-21T17:05:00Z \",
          \"value\": 0.46074
        },
        {
          \"timestamp\": \"2019-03-21T17:05:00Z \",
          \"value\": 0.83104
        },
        {
          \"timestamp\": \"2019-03-21T17:05:00Z \",
          \"value\": 1.260635
        },
        {
          \"timestamp\": \"2019-03-21T17:05:00Z \",
          \"value\": 1.749
        }
      ]
    }" \
    --user "username":"password"

    出力に成功した結果が表示されます。

    {
        "result": {
            "message": "ok"
        }
    }

    MetricBase 時系列 - POST /now/clotho/transform

    線形パイプラインを形成する変換の指定されたリストを適用した後、1 つ以上の測定基準の時系列データを取得し、オプションでグループ化します。

    URL 形式

    バージョニングされた URL:/api/now/{api_version}/clotho/transform

    サポートされている要求パラメーター

    表 : 19. パスパラメーター
    名前 説明
    api_version オプションアクセスするエンドポイントのバージョン。たとえば、v1v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。

    データタイプ:文字列

    表 : 20. クエリパラメーター
    名前 説明
    sysparm_display_value 他のラベルが指定されていない場合に、結果データに対象レコードの表示値のラベルを付けるかどうかを示すフラグ。
    有効な値:
    • true:結果データは対象レコードの表示値でラベル付けされます。
    • false:結果データは対象レコードの表示値でラベル付けされません。

    データタイプ:ブール

    デフォルト値:false

    表 : 21. 要求本文パラメーター (XML または JSON)
    名前 説明
    end 必須です。評価期間の終了時間。空または値がない場合は現在の時間として扱われます。時間値には、この終了時間が含まれます。

    データタイプ:文字列

    形式:ISO 8601 (UTC)、次のいずれか:
    • 絶対日付形式:[YYYY-MM-DDThh:mm:ss] (2019-03-20T17:04:55 など)
    • 現在の期間に相対的な形式:[P(n)Y(n)M(n)DT(n)H(n)M(n)S] (P1M など)
    limit 返されるレコードの最大数。異常に大きい値はシステムパフォーマンスに影響する可能性があります。

    データタイプ:数値

    デフォルト:10,000

    metrics 変換で使用する測定基準オブジェクトのリスト。メトリクスの詳細については、「Metrics」を参照してください。

    データタイプ:アレイ

    "metrics": [
      {
        "groupBy": "String"
        "label": "String",
        "metric": "String",
        "transforms": [Array]
      }
    ]
    metrics.groupBy table パラメーターで指定されたテーブルに含まれるフィールドをカンマで区切ったリスト。集計された変換を収集または適用する前に系列をグループ化するために使用します。

    リスト内のアイテムの順序は、データがグループ化される順序です。たとえば、リストに「state, zip code」の 2 つのアイテムがある場合、系列は最初に state 別にグループ化され、次に state 内の zip code 別にグループ化されます。

    データタイプ:文字列

    デフォルト:データはグループ化されません。

    metrics.label この測定基準の結果セットに使用するラベル。変換チェーンによって生成されたラベルを置き換えます。

    データタイプ:文字列

    デフォルト:生成されたデフォルトのラベル。

    metrics.metric metrics オブジェクトが渡されない場合は必須です。変換で使用する測定基準フィールド。このフィールドは、table パラメーターで指定されたテーブルに存在する必要があります。

    データタイプ:文字列

    metrics.transforms 取得された時系列データに適用する変換のリスト (変換チェーン) 。各変換は、前の変換の結果に基づいて構築されます。利用可能な変換のリストについては、以下の「サポートされている変換」を参照してください。

    データタイプ:アレイ

    "transforms": [
      {
        "arg": {Object},
        "name": "String"
      }
    ]
    metrics.transforms.arg 変換に依存します。変換に渡す 1 つまたは複数のパラメーター。
    一般的なガイドライン:
    • パラメーターを取得しない変換を指定する場合は、arg パラメーターを使用しないでください。
    • 単一のパラメーターを取得する変換には、数値、文字列、またはブールを使用します。
    • 複数のパラメーターを取得する変換には、適切な名前と値のペアを持つ JSON オブジェクトを使用します。

    データタイプ:変換に応じて、数値、文字列、ブール、または JSON オブジェクト。(利用可能な変換のリストについては、以下の「サポートされている変換」の表を参照してください)。

    metrics.transforms.name transforms オブジェクトが指定されている場合は必須です。変換の名前。

    利用可能な変換のリストについては、以下の「サポートされている変換」の表を参照してください。

    データタイプ:文字列

    クエリ 結果セットのフィルタリングに使用するエンコードされたクエリ。

    指定されたテーブルのフィルターエディターを使用してクエリを作成できます。作成したら、フィルターのブレッドクラムコンテキストメニューから [URL のコピー] を選択します。

    データタイプ:文字列

    デフォルト:なし

    start 必須です。評価期間の開始時間。特別な値 all を使用すると、現在の時刻から指定した測定基準の最大保持期間を引いた時刻を開始時刻として設定できます。空または値がない場合は、暗黙的な allとして扱われます。時間値には、この開始時間が含まれます。

    データタイプ:文字列

    形式:ISO 8601 (UTC)、次のいずれか:
    • 絶対日付形式:[YYYY-MM-DDThh:mm:ss] (2019-03-20T17:04:55 など)
    • 現在の期間に相対的な形式:[P(n)Y(n)M(n)DT(n)H(n)M(n)S] (P1M など)
    table 必須です。この系列に関連付けられた GlideRecord を含むテーブルの名前。

    データタイプ:文字列

    ヘッダー

    次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。

    表 : 22. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。application/json のみをサポートします。
    Content-Type 要求本文のデータ形式。application/json のみをサポートします。
    表 : 23. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。

    表 : 24. ステータスコード
    ステータスコード 説明
    200 成功。要求が正常に処理されました。
    400 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。
    401 権限がありません。ユーザー資格情報が間違っているか、渡されていません。
    404 見つかりません。要求アイテムが見つかりませんでした。
    405 無効なメソッドです。この機能は無効です。
    500 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。

    応答本文のパラメーター (JSON または XML)

    名前 説明
    results クエリを満たす 0 個以上の結果オブジェクトが返されます。series アレイまたは grouped アレイのいずれかが含まれます。

    データタイプ:アレイ

    "results":[
      {
        "grouped": [Array],
        "marker": "String",
        "series": [Array]
      }
    ]
    results.grouped grouped 結果オブジェクトが特定のグループに対応する、グループ化された結果オブジェクトのリスト。この形式は、metrics.groupBy パラメーターが要求本文で渡されたときに返されます。

    データタイプ:アレイ

    "grouped": [
      {
        "groupingBy": "String",
        "groups": [Array]
      }
    ]
    results.grouped.groupingBy 要求の metrics.groupBy パラメーターに渡される値。

    データタイプ:文字列

    results.grouped.groups 要求の metrics.groupBy パラメーターの内容に基づいて生成されたグループのリスト。

    データタイプ:アレイ

    "groups": [
      {
        "group": "String",
        "label": "String",
        "series": {Object}
      }
    ]
    results.grouped.groups.group グループの名前。

    データタイプ:文字列

    results.grouped.groups.label グループのラベル。

    データタイプ:文字列

    results.grouped.groups.series グループの結果の変換された値。

    データタイプ:アレイ

    "series": [
      {
        "label": "String",
        "seriesRef": {Object},
        "values": [Array]
      }
    ]
    results.grouped.groups.series.label 系列のラベル。

    データタイプ:文字列

    results.grouped.groups.series.seriesRef 単一のデータ系列の結果。応答に複数のデータ系列がある場合は表示されません。

    データタイプ:オブジェクト

    "seriesRef": {
      "metric": "String",
      "subject": "String",
      "table": "String"
    }
    results.grouped.groups.series.seriesRef.metric データ系列の取得元の測定基準の名前。metrics オブジェクトが要求で渡された場合にのみ表示されます。

    データタイプ:文字列

    results.grouped.groups.series.seriesRef.subject データ系列レコードの sys_id。results.series.seriesRef.table で指定されたテーブルにあります。

    データタイプ:文字列

    results.grouped.groups.series.seriesRef.table データ系列の取得元のテーブルの名前。

    データタイプ:文字列

    results.grouped.groups.series.values グループの結果値のリスト。

    データタイプ:アレイ

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    results.grouped.groups.series.values.timestamp 値の ISO 8601 タイムスタンプ。

    データタイプ:文字列

    results.grouped.groups.series.values.value 変換された値。

    データタイプ:数値

    results.marker 対応する結果の一意の識別子。

    データタイプ:文字列

    results.series 結果オブジェクトのグループ化されていない系列のリスト。

    データタイプ:アレイ

    "series": [
      {
        "label": "String",
        "seriesRef": {Object},
        "values": [Array]
      }
    ]
    results.series.label データ系列ラベル。この値は、エンドポイントによって生成されるか、metrics.label パラメーターに渡される値です。

    データタイプ:文字列

    results.series.seriesRef 単一のデータ系列の結果。応答に複数のデータ系列がある場合は表示されません。

    データタイプ:オブジェクト

    "seriesRef": {
      "metric": "String",
      "subject": "String",
      "table": "String"
    }
    results.series.seriesRef.metric データ系列の取得元の測定基準の名前。metrics オブジェクトが要求で渡された場合にのみ表示されます。

    データタイプ:文字列

    results.series.seriesRef.subject データ系列レコードの sys_id。results.series.seriesRef.table で指定されたテーブルにあります。

    データタイプ:文字列

    results.series.seriesRef.table データ系列の取得元のテーブルの名前。

    データタイプ:文字列

    results.series.values 変換された系列値。

    データタイプ:アレイ

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    results.series.values.timestamp 値の ISO 8601 タイムスタンプ。

    データタイプ:文字列

    results.series.values.value 変換された値。

    データタイプ:数値

    サポートされている変換

    表 : 25. データ変換タイプ
    変換 説明
    add 指定された数値を各タイムスタンプ値に追加します。

    引数: arg (10 進数データ型) -- 加算する数値。

    例:
    "transforms": [
      {
        "name": "add",
        "arg": 8
      }
    ]
    autocorrelate 1 から始まって増加する期間の数で区切られたタイムスタンプ値間の相関を計算します。
    avg 入力全体の対応する各タイムスタンプの平均値を含む 1 つの系列に時系列を集計します。
    bottom 最小値を含む指定された数の系列を返します。

    引数: arg (整数) – 返される系列の数。

    たとえば、次の場合、最も小さい値のセットを含む 2 つの時系列が返されます。
    "transforms": [
      {
         "name": "bottom",
         "arg": 2
      }
    ]
    ceil 各タイムスタンプの値を指定された精度に切り上げます:ceil(value / <arg>) * <arg>)

    引数: arg (Decimal データ型) -- 切り上げ後の小数点以下桁数。

    collect 収集変換呼び出しの時点までの変換チェーンの変換結果を表示します。収集変換の結果には一意のマーカーが含まれていますが、ラベルを定義することもできます。
    例:
    {
      "start": "PT1H",
      "end": "",
      "table": "mb_demo_drone",
      "limit": 5000,
      "metrics": [
        {
          "metric": "mb_demo_mt_altitude",
          "transforms": [
            {
              "name": "label",
              "arg": "Series Timestamp Values"
            },
            {
              "name": "collect"
            },
            {
              "name": "avg"
            },
            {
              "name": "label",
              "arg": "Average Timestamp Values"
            }
          ]
        }
      ]
    }
    constrainValues 指定された範囲外の値を、対応する最大値または最小値に置き換えます。
    たとえば、次のように指定すると、0 未満の値は 0 に、100 を超える値は 100 に置き換えられます。
    "transforms": [
      {
        "name": "constrainValues",
        "val1": 0,
        "val2": 100
      }
    ]
    引数:
    • val1 (10 進数データ型): 最小値または最大値。
    • val2 (10 進数データ型): 最小値または最大値。
    カウント 時系列を 1 つの系列に集計します。新しい系列には、系列全体で対応する各タイムスタンプの NaN (数値以外) ではない値の数が含まれます。
    derivative タイムスタンプ間の変更率を決定します。各タイムスタンプの値と次のタイムスタンプの値の差をタイムスタンプの期間で除算します。
    注:
    この変換は、系列内の値の数より 1 つ少ない値を返します。
    div 各タイムスタンプの値を指定された数値 (arg) で除算します。

    引数: arg (10 進数:各タイムスタンプの値を除算する数値。

    エンベロープ 2 つの時系列を返します。いずれかの時点における最大値が一方に含まれ、もう一方に最小値が含まれます。
    注:
    NaN は無視されますが、他の戻り値がない場合は返されます。
    exp 指定された基準値を各タイムスタンプの値でべき乗します。

    引数: arg (10 進数データ型) -- 基準値。

    filter 移動平均の生成など、スライディングウィンドウのコンテンツに集計関数を適用します。
    引数:
    • aggregator (アグリゲーターデータ型): 実行するアグリゲーションのタイプ。
    • window (期間データ型): スライディング ウィンドウの期間。
    フロア 各タイムスタンプの値を指定された精度に切り下げます:floor(value / <arg>) * <arg>

    引数: arg (10 進数データ型) -- 切り捨て後の小数点以下桁数。

    fractiles 指定されたアレイの各分数の時系列を返します。各タイムスタンプ値は、入力系列全体の対応するタイムスタンプに関して、指定された値の分数が、指定された割合を下回っている値です。たとえば、分数が 0.5 の場合、タイムスタンプの値は、入力系列の値の半分が 0.5 未満の値になります。

    引数:arg ( 10 進数のアレイ):入力系列で使用する分数。

    例:
    "transforms": [
      {
        "name": "fractiles",
        "arg": [0.25, 0.5, 0.75, 1]
      }
    ]
    groupBy 集計された変換を収集または適用する前に、指定されたフィールドでデータをグループ化します。

    引数: arg (文字列):変換結果をグループ化するために使用するテーブル内のフィールドのカンマ区切りリスト。

    例:
     "transforms": [
      {
        "name": "groupBy",
        "arg": "model"
      },
      {
        "name": "avg"
      },
      {
        "name": "label",
        "arg": "Model: %g"
      }
    ]
    integrate 各タイムスタンプの値をその期間で乗算します。
    interpolate 隣接するデータ値から補間して NaN データアイテムのデータ値を作成します。

    引数:arg (整数):非 NaN 値をチェックする各方向のデータサンプルの数。非 NaN 値が見つからない場合は、NaN が使用されます。

    inverse 各タイムスタンプ値の反転を計算します。
    iqr 四分位範囲変換を実行し、次の 4 つの系列を含む結果セットを作成します。
    1. -IQR:以下のすべてのエントリの中央値 Q1 - (1.5 * IQR)
    2. Q1:エントリの最小の半分の中央値。
    3. Q3:エントリの最大の半分の中央値。
    4. -IQR:上のすべてのエントリの中央値 Q3 + (1.5 * IQR)
    注:
    IQR = Q3 - Q1
    label 変換チェーンにラベルを付けます。
    注:
    後続の変換でラベルが変更されるか、ラベルが置き換えられる場合があります。
    引数: arg (文字列) :ラベルのテキスト。次の書式設定式を含めることができます。
    • %%:「%」リテラルをエスケープします。
    • %l:置換される現在のラベル。
    • %s:系列の件名。
    • %g:グループ化フィールドの値。これが参照レコードの場合、レコードの名前フィールドの値。groupBy 変換で複数のグループが指定されている場合、ラベルはカンマで区切られます。
    • %G:グループ化フィールドの値。これが参照レコードの場合、レコードの sys_id。複数のグループが選択されている場合、値はカンマで区切られます。
    例:
    "transforms": [
      {
        "name": "label",
        "arg": "Series Timestamp Values"
      },
    ]
    "transforms": [
      {
        "name": "groupBy",
        "arg": "model"
      },
      {
        "name": "avg"
      },
      {
        "name": "label",
        "arg": "Model: %g"
      }
    ]
    limit 最後に保存された値から始めて、指定された期間または値の数の最大値を返します。
    引数:
    • arg (整数):各時系列に対して返すタイムスタンプ値の数。

      OR

    • arg (期間データ型): 各時系列を制限する期間。
    log 各タイムスタンプの値に対して対数計算を実行します。結果は、タイムスタンプ値の指定された基準値の対数です。

    引数: arg (10 進数データ型) -- 対数計算の基数。

    mapValues 指定された範囲内 (包含) の値を指定された値に置き換えます。lowerBoundupperBound の両方が NaN として指定されている場合、NaN 値を targetValueに置き換えます。
    引数:
    • lowerBound (10 進数データ型): 範囲内の最小値。
    • upperBound (10 進数データ型): 範囲内の最大値。
    • targetValue (10 進数データ型): 置換値。
    たとえば、次の例では、.1 と .9 の間の時系列のすべての値を 1 に変更します。
    "transforms": [
      {
        "name": "mapValues",
        "lowerBound": .1,
        "upperBound": .9,
        "targetValue": 1
      }
    ]
    max 入力全体の対応する各タイムスタンプの最大値を含む系列を返します。
    median 系列のセット全体の各タイムスタンプの値の中央値を含む系列を作成します。
    n 系列がある場合:
    • n が奇数の場合、中央値はタイムスタンプの (n / 2 + 1) 値です。
    • n が偶数の場合、中央値はタイムスタンプの (n / 2) 値と (n / 2 + 1) 値の平均です。
    min 入力全体の対応する各タイムスタンプの最小値を含む系列を返します。
    mul 各タイムスタンプの値を指定された数値で乗算します。

    引数: arg (10 進数データ型) -- 各タイムスタンプの値を乗算する数値。

    パーティション

    指定された集計関数を重複しないウィンドウに適用することによって、値をフィルタリングして新しい系列を生成します。

    引数:
    • aggregator (アグリゲーターデータ型): 実行するアグリゲーションのタイプ。
    • window (Duration データ型): アグリゲーターを適用する重複しないウィンドウの期間。
    • base (DateTime データ型): パーティション分割に使用するゼロ オフセット。たとえば、日 (24 時間) で分割するには、この値をタイムゾーンの月曜日の午前 0 時に設定します。30 日間でパーティション化するには、この値を直近の月の最初の日に設定します。

      デフォルト:EPOCH の先頭。

    pow 各タイムスタンプ値を指定された値でべき乗します。

    引数: arg (10 進数データ型) -- 各値を上げるべき乗。

    product 選択した測定基準系列を、各タイムスタンプのすべての値の積を含む 1 つの系列に集計します。NaN は除外されます。系列内のすべての数値が NaN の場合、出力も NaN になります。
    resample 固定数のポイントに、またはある頻度から別の頻度に時系列をリサンプルします。

    リサンプル変換を使用して、結果セット内のサンプル数を減らし、表示するサンプル数により密接に一致するようにします。

    引数:この変換にはさまざまな引数を渡すことができます。可能な各引数グループのリストを以下に示します。単一の変換内で渡すことができるこれらの引数グループは 1 つだけです。次の引数グループは AND/OR で区切られます。AND は、引数が現在のグループの一部であることを意味します。OR は、新しい引数グループの開始を意味します。
    • arg (整数):結果セットに含めるサンプルの数。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。この数よりも多くのサンプルがある場合は、平均化されて減少します。

      OR

    • arg (Duration データ型): リサンプリングする頻度。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。この数よりも多くのサンプルがある場合は、平均化されて減少します。

      OR

    • minValues (整数):結果セットに含めるサンプルの最小数。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。

      AND

    • maxValues (整数):結果セットに含めるサンプルの最大数。この数よりも多くのサンプルがある場合は、平均化されて減少します。

      OR

    • aggregator (アグリゲーターデータ型): リサンプリング時に使用するアグリゲーター。

      AND

    • values (整数):結果セットに含めるサンプルの数。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。この数よりも多くのサンプルがある場合は、指定した aggregator がそれらに適用されて減少します。

      OR

    • aggregator (アグリゲーターデータ型): リサンプリング時に使用するアグリゲーター。

      AND

    • period (期間データ型): リサンプリングする頻度。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。この数よりも多くのサンプルがある場合は、指定した aggregator がそれらに適用されて減少します。

      OR

    • aggregator (アグリゲーターデータ型): リサンプリング時に使用するアグリゲーター。

      AND

    • minValues (整数):結果セットに含めるサンプルの最小数。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。

      AND

    • maxValues (整数):結果セットに含めるサンプルの最大数。この数よりも多くのサンプルがある場合は、平均化されて減少します。
    round 各タイムスタンプの値を指定された精度に切り上げます:(value / <arg>) * <arg>

    引数: arg (10 進数データ型) -- 切り上げ後の小数点以下桁数。

    root 指定されたインデックスを使用して、各タイムスタンプ値のルートを計算します。

    引数: arg (10 進数データ型) -- ルートのインデックス。

    たとえば、次の例では、各タイムスタンプの平方根が返されます。
    "transforms": [
      {
        "name": "root",
        "arg": "2"
      },
    ]
    stddev 系列のセット全体の各タイムスタンプの値の標準偏差を含む系列を作成します。
    sub 各タイムスタンプの値から指定された数値を減算します。

    引数:arg (数値):各タイムスタンプの値から減算する数値。

    sum 選択した測定基準系列を、NaN を除く各タイムスタンプのすべての値の合計を含む 1 つの系列に集計します。系列内のすべての数値が NaN の場合、出力は NaN になります。
    timeshift 値を変更せずに、指定されたオフセットを値のタイムスタンプに追加することで、時間範囲をシフトします。この変換を使用して、タイムスタンプを別のタイムゾーンにシフトします。

    引数: arg (期間データ型) -- シフトする時間の長さ。

    最大値を含む指定された数の系列を返します。

    引数: arg (整数) – 返される系列の数。

    たとえば、次の場合、最も大きい値のセットを含む 2 つの時系列が返されます。
    "transforms": [
      {
         "name": "top",
         "arg": 2
      }
    ]
    データタイプ 説明
    集計関数 変換内で使用できる集計関数。
    • AVG:現在選択されているすべての系列の算術平均を計算します。
    • CHISQUARE:統計モデルが測定基準データセットにどの程度適合するかを示します。
    • LAST:期間のウィンドウ内で最後に定義された値を返します。
    • MAX:測定基準データセットの各時点での最大値を示します。
    • MEDIAN:測定基準データセットの中央値を示します。中央値は、測定基準データセットの高い方の値と低い方の値を分離します。
    • MIN:測定基準データセットの各時点での最小値を示します。
    • STDDEV:基になるデータ間の標準偏差を計算します。測定基準データセット内の一連のデータ値の変動または分散を定量化するために使用されます。
    • SUM:現在選択されているすべての系列の合計を計算します。
    DateTime 絶対日付/時刻値は、ISO 8601 の日付と時刻形式 YYYY-MM-DDThh:mm:ss で指定されます。例:2020-02-28T13:10:42

    各項目の意味は次のとおりです。

    • [YYYY]:4 桁の年。
    • [MM]:01 ~ 12 のゼロパディングされた月。
    • [DD]:01 ~ 31 のゼロパディングされた日。
    • T:時間を表し、時間コンポーネントが指定される前に必須です。
    • [hh]:00 〜 23 のゼロパディングされた時間。
    • [mm]:00 〜 59 のゼロパディングされた分。
    • [ss]:00 〜 59 のゼロパディングされた秒。うるう秒は前の 1,000 秒間に均等に分散されます。

    相対日付/時刻値は、現在の時刻から減算される期間 (Duration データ型) を使用して指定されます。

    例:P7D = 7 日前。

    10 進数 次のいずれかの 10 進値。
    • 指数表記を使用できる任意精度の符号付き 10 進数。

      例:

      • 2
      • 1.7
      • -3.47
      • 1.0E+2
    • 次の文字列表現:
      • 指数表記を使用することができ、倍精度の 64 ビット IEEE 754 浮動小数点数であることが保証されている符号付き 10 進数。
      • 「NaN」
      • 「-Infinity」
      • 「+Infinity」
    期間 時間間隔の時間。期間の値は ISO 8601 期間形式で指定されます: P[n]Y[n]M[n]DT[n]H[n]M[n]S
    各項目の意味は次のとおりです。
    • P:期間指定子。「期間」と呼ばれ、常に期間の先頭に配置されます。
    • [n]Y:年数。
    • [n]M:月数。
    • [n]D:日数。
    • T:時間指定子。時間コンポーネントが指定される前に必須です。
    • [n]H:時間数。
    • [n]M:分数。
    • [n]S:秒数。
    例:
    • P7D:7 日間の期間。
    • P1M:1 か月の期間。
    • PT15M:15 分間の期間。
    • P1DT12H:1 日と 12 時間の期間。

    cURL 要求

    curl "https://instance.servicenow.com/api/now/v1/clotho/transform \
    --request POST \
    --header "Accept:application/json", "Content-Type:application/json" \
    --user "username":"password"
    -d {\
      "start": "PT15M",\
      "end": "",\
      "table": "mb_demo_drone",\
      "query": "fleet.nameSTARTSWITHB",\
      "limit": 5000,\
      "metrics": [\
        {\
          "metric": "mb_demo_mt_altitude",\
          "label": "Series - Avg",\
          "transforms": [\
            {\
              "name": "partition",\
              "arg": {\
                "aggregator": "AVG",\
                "window": "PT5M"\
              }\
            },
            {\
              "name": "avg"\
            }\
          ]\
        },
        {\
          "metric": "mb_demo_mt_altitude",\
          "groupBy": "fleet",\
          "label": "Fleet - AVG",\
          "transforms": [\
            {\
              "name": "partition",\
              "arg": {\
                "aggregator": "AVG",\
                "window": "PT5M"\
              }\
            },
            {\
              "name": "avg"\
            }\
          ]\
        }\
      ]\
    } \

    出力:

    "results:" [
      {
        "marker": "674d86ba-a810-4065-942b-0b7ca2f95db2",
        "series": [
          {
            "label": "Series - Avg",
            "values": [
              {
                "timestamp": "2020-05-01T21:05:00Z",
                "value": 157.43086
              },
              {
                "timestamp": "2020-05-01T21:10:00Z",
                "value": 162.92278
              }
            ]
          }
        ]
      },
      {
        "marker": "846aa334-232a-4015-b033-d18ebc4b1d23",
        "grouped": [
          {
            "groupingBy": "fleet",
            "groups": [
              {
                "group": "86fac11787333200a328c5b836cb0b4e",
                "label": "Bantams",
                "series": {
                  "label": "Fleet - AVG",
                  "values": [
                    {
                      "timestamp": "2020-05-01T21:05:00Z",
                      "value": 159.70201
                    },
                    {
                      "timestamp": "2020-05-01T21:10:00Z",
                      "value": 165.1136
                    }
                  ]
                }
              },
              {
                "group": "4afac11787333200a328c5b836cb0b4e",
                "label": "Bumble Untd",
                "series": {
                  "label": "Fleet - AVG",
                  "values": [
                    {
                      "timestamp": "2020-05-01T21:05:00Z",
                      "value": 154.5403
                    },
                    {
                      "timestamp": "2020-05-01T21:10:00Z",
                      "value": 160.13445
                    }
                  ]
                }
              }
            ]
          }
        ]
      }
    ]

    MetricBase 時系列 - POST /now/clotho/transform/stream

    指定された変換のリストを適用した後、1 つ以上の測定基準の変換された時系列データのストリームを返します。

    この方法でデータをストリーミングすると、すべての変換結果が完了してダウンロードされるのを待つのではなく、個々の変換が完了して返されるときにデータを処理できます。大量のデータをクライアントで処理する必要がある場合、このタイプの処理はエンドツーエンドの処理時間を短縮し、クライアントのメモリ使用量を削減できる可能性があります。

    対応する Accept ヘッダー値を要求に設定することで、次のことができます。
    • バイナリ形式でエンコードするストリーミングデータを指定します。
    • ストリーミングされたデータを JSON アレイにシリアル化します。
    • データをワイドまたはナローの CSV 形式でクライアントにストリーミングします。
    メトリックベース サーバーで変換が完了すると、グループ化や事前定義された順序付けなしに、エンドポイントはデータをストリーミングします。バイナリ形式でストリーミングされるデータは、MetricBase 時系列 - POST /now/clotho/transform エンドポイントによって返される JSON 表現よりもサイズが小さくなります。

    URL 形式

    バージョニングされた URL:/api/now/{api_version}/clotho/transform/stream

    サポートされている要求パラメーター

    表 : 26. パスパラメーター
    名前 説明
    api_version オプションアクセスするエンドポイントのバージョン。たとえば、v1v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。

    データタイプ:文字列

    表 : 27. クエリパラメーター
    名前 説明
    sysparm_display_value 他のラベルが指定されていない場合に、結果データに対象レコードの表示値のラベルを付けるかどうかを示すフラグ。
    有効な値:
    • true:結果データは対象レコードの表示値でラベル付けされます。
    • false:結果データは対象レコードの表示値でラベル付けされません。

    データタイプ:ブール

    デフォルト値:false

    表 : 28. 要求本文パラメーター (XML または JSON)
    名前 説明
    end 必須です。評価期間の終了時間。空または値がない場合は現在の時間として扱われます。時間値には、この終了時間が含まれます。

    データタイプ:文字列

    形式:ISO 8601 (UTC)、次のいずれか:
    • 絶対日付形式:[YYYY-MM-DDThh:mm:ss] (2019-03-20T17:04:55 など)
    • 現在の期間に相対的な形式:[P(n)Y(n)M(n)DT(n)H(n)M(n)S] (P1M など)
    limit 返されるレコードの最大数。異常に大きい値はシステムパフォーマンスに影響する可能性があります。

    データタイプ:数値

    デフォルト:10,000

    metrics 変換で使用する測定基準オブジェクトのリスト。メトリクスの詳細については、「 メトリクス」を参照してください。

    データタイプ:アレイ

    "metrics": [
      {
        "label": "String",
        "metric": "String",
        "transforms": [Array]
      }
    ]
    metrics.label この測定基準の結果セットに使用するラベル。変換チェーンによって生成されたラベルを置き換えます。

    データタイプ:文字列

    デフォルト:生成されたデフォルトのラベル。

    metrics.metric metrics オブジェクトが渡されない場合は必須です。変換で使用する測定基準フィールド。このフィールドは、table パラメーターで指定されたテーブルに存在する必要があります。

    データタイプ:文字列

    metrics.transforms 取得された時系列データに適用する変換のリスト (変換チェーン) 。各変換は、前の変換の結果に基づいて構築されます。利用可能な変換のリストについては、以下の「サポートされている変換」を参照してください。

    データタイプ:アレイ

    "transforms": [
      {
        "arg": {Object},
        "name": "String"
      }
    ]
    metrics.transforms.arg 変換に依存します。変換に渡す 1 つまたは複数のパラメーター。
    一般的なガイドライン:
    • パラメーターを取得しない変換を指定する場合は、arg パラメーターを使用しないでください。
    • 単一のパラメーターを取得する変換には、数値、文字列、またはブールを使用します。
    • 複数のパラメーターを取得する変換には、適切な名前と値のペアを持つ JSON オブジェクトを使用します。

    データタイプ:変換に応じて、数値、文字列、ブール、または JSON オブジェクト。(利用可能な変換のリストについては、以下の「サポートされている変換」の表を参照してください)。

    metrics.transforms.name transforms オブジェクトが指定されている場合は必須です。変換の名前。

    利用可能な変換のリストについては、以下の「サポートされている変換」の表を参照してください。

    データタイプ:文字列

    クエリ 結果セットのフィルタリングに使用するエンコードされたクエリ。

    指定されたテーブルのフィルターエディターを使用してクエリを作成できます。作成したら、フィルターのブレッドクラムコンテキストメニューから [URL のコピー] を選択します。

    データタイプ:文字列

    デフォルト:なし

    start 必須です。評価期間の開始時間。特別な値 all を使用すると、現在の時刻から指定した測定基準の最大保持期間を引いた時刻を開始時刻として設定できます。空または値がない場合は、暗黙的な allとして扱われます。時間値には、この開始時間が含まれます。

    データタイプ:文字列

    形式:ISO 8601 (UTC)、次のいずれか:
    • 絶対日付形式:[YYYY-MM-DDThh:mm:ss] (2019-03-20T17:04:55 など)
    • 現在の期間に相対的な形式:[P(n)Y(n)M(n)DT(n)H(n)M(n)S] (P1M など)
    table 必須です。この系列に関連付けられた GlideRecord を含むテーブルの名前。

    データタイプ:文字列

    ヘッダー

    次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。

    表 : 29. 要求ヘッダー
    ヘッダー 説明
    Accept 応答本文のデータフォーマット。以下をサポートします。
    • application/json
    • application/octet-stream 又は
    • text/csv
    CSV 形式を指定するには、 text/csv を使用します。format=narrow または text/csv;format=wideです。
    Content-Type 要求本文のデータ形式。application/json のみをサポートします。
    表 : 30. 応答ヘッダー
    ヘッダー 説明
    なし 応答本文のデータフォーマット。要求の指定された Accept 値に基づいて、以下を使用します。
    • application/json
    • application/octet-stream 又は
    • text/csv

    複数の Accept タイプが指定されている場合は、サポートされている最初のタイプが返されます。

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。

    表 : 31. ステータスコード
    ステータスコード 説明
    200 成功。要求が正常に処理され、データのストリーミングが開始されます。
    注:
    200 応答では、変換が計算される途中でも処理エラーが発生する可能性があります。
    400 要求が正しくありません。不適切な要求タイプまたは誤った要求が検出されました。
    401 権限がありません。ユーザー資格情報が間違っているか、渡されていません。
    404 見つかりません。要求アイテムが見つかりませんでした。
    405 無効なメソッドです。この機能は無効です。
    500 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。

    応答本文のパラメーター (Octet-stream または JSON)

    名前 説明
    出力ストリーム (Octet-Stream) Accept 要求ヘッダーが application/octet-stream に設定されている場合、一致する MetricBase データは、バイナリのシリアル化されたストリームとして返されます。Clotho-Util for Java アプリケーションは、このデータを解析できるデシリアライザーを提供します。

    ストリームは、長さを表す整数と、それに続く各データのバイナリシリアル化で構成されます。次のエントリでは、バイナリ表現内のデータとそのデータの順序について説明します。

    CSV ストリーム (UTF-8 ストリーム) Accept 要求ヘッダーが text/csv に設定されている場合、一致するメトリックベースデータは、ワイド形式またはナロー形式の UTF-8 エンコード CSV データとして返されます。

    ナロー形式では、件名とタイムスタンプの列と、返された各メトリクスの列が返されます。ワイド形式では、メトリックとサブジェクトのペアごとに個別の列を持つタイムスタンプ列が返されます。

    [件名] データのソース。たとえば、データの測定基準がドローンの高度である場合、この値は特定のドローンの ID にできます。値にコロンが含まれている場合、サブジェクトの後の部分は、データが含まれている測定基準を表します。Null 値は、エンコードされた空の文字列で表されます。

    サイズ:2 バイト以上

    データタイプ:Java 修正 UTF 文字列

    Dimension データの取得元の測定基準。Null 値は、エンコードされた空の文字列で表されます。

    サイズ:2 バイト以上

    データタイプ:Java 修正 UTF 文字列

    Label データのラベル。Null 値は、エンコードされた空の文字列で表されます。

    サイズ:2 バイト以上

    データタイプ:Java 修正 UTF 文字列

    Type バイトにエンコードされたデータのタイプ。

    可能な値:

    • 浮動小数点シグナル
    • 倍精度シグナル
    • 浮動小数点モード
    • 倍精度モデル

    サイズ:1 バイト

    データタイプ:バイト

    Flags エンコードされた serializeFlags 変数。serializeTags が true で、データにタグが含まれている場合、値は 2 です。それ以外の場合は 0 です。

    サイズ:1 バイト

    データタイプ:バイト

    Period データに関連付けられた期間。

    サイズ:4 バイト

    データタイプ:整数

    Number of Tags serializeTags が true の場合、これはデータに保存されているタグの数です。

    サイズ:4 バイト

    データタイプ:整数

    Tags serializeTags が true の場合、各タグがデータに保存されます。

    サイズ:タグの数によって異なります (2 バイト以上)。

    データタイプ:Java 修正 UTF 文字列

    Start Epoch Second このデータ系列の開始時間を表すエポック UTC 時間。

    サイズ:8 バイト

    データタイプ:長整数

    Number of Values このデータに保存されている値の数。

    サイズ:4 バイト

    データタイプ:整数

    Values TypeFloat Signal の場合、残りの部分は浮動小数点値で構成されます。

    サイズ:Number of Values * 4

    データタイプ:浮動小数点

    Values Type倍精度シグナルの場合、残りの部分は倍精度値で構成されます。

    サイズ:Number of Values * 4 バイト

    データタイプ:倍精度

    モデル Json (Model) TypeFloat Model または Double Model の場合、残りの部分は JSON としてモデルを表す Java 修正 UTF 文字列です。

    サイズ:2 バイト以上

    データタイプ:JSON (Java 修正 UTF 文字列)

    大きなモデルマーカー (Big Model) モデルの JSON の長さが 65,535 バイトを超える場合、Model Json の代わりにこのフィールドが書き込まれます。

    サイズ:5

    データタイプ:Java 修正 UTF 文字列

    大きなモデルサイズ (Big Model) 大きなモデルの JSON 表現の長さ。

    サイズ:4 バイト

    データタイプ:整数

    大きなモデル Json (Big Model) 一連の UTF 文字としてのモデルの JSON 表現。サイズは Big Model Size フィールドによって決まります。

    サイズ:65535 ~ 256000 バイト

    データタイプ:UTF 文字

    JSON ストリーム (JSON) Accept 要求ヘッダーが application/json に設定されている場合、一致する MetricBase データは、新しい改行区切りの JASON オブジェクトのストリームとして返されます。次のエントリでは、返される各オブジェクトの可能な要素について説明します。
    label データのラベル。この値は、エンドポイントによって生成されるか、metrics.label パラメーターに渡される値です。

    データタイプ:文字列

    period 各値の間の時間間隔。たとえば、60 の period は、各値が 1 分離れていることを意味します。

    単位:秒

    データタイプ:数値

    range ISO 8601 (UTC) 形式のデータの開始時間と終了時間。

    データタイプ:アレイ

    系列 個々のデータを識別します。存在する場合、通常は [glide record id]:[metric] の形式です。変換を使用する場合、これは存在しない可能性があります。

    データタイプ:文字列

    species 返されるデータのタイプ。一連の浮動小数点値または倍精度値の場合、これは FLOAT_SIGNAL または DOUBLE_SIGNAL のいずれかです。浮動小数点データまたは倍精度データを分析するためのモデルの場合、これは FLOAT_MODEL または DOUBLE_MODEL のいずれかです。

    データタイプ:文字列

    tags データに関連付けられたタグ。

    データタイプ:文字列のアレイ

    value データの浮動小数点値または倍精度値。

    データタイプ:数値のアレイ

    error 指定されたデータ系列の変換に失敗した場合のエラーメッセージ。

    データタイプ:文字列

    サポートされている変換

    表 : 32. データ変換タイプ
    変換 説明
    add 指定された数値を各タイムスタンプ値に追加します。

    引数: arg (10 進数データ型) -- 加算する数値。

    例:
    "transforms": [
      {
        "name": "add",
        "arg": 8
      }
    ]
    autocorrelate 1 から始まって増加する期間の数で区切られたタイムスタンプ値間の相関を計算します。
    avg 入力全体の対応する各タイムスタンプの平均値を含む 1 つの系列に時系列を集計します。
    bottom 最小値を含む指定された数の系列を返します。

    引数: arg (整数) – 返される系列の数。

    たとえば、次の場合、最も小さい値のセットを含む 2 つの時系列が返されます。
    "transforms": [
      {
         "name": "bottom",
         "arg": 2
      }
    ]
    ceil 各タイムスタンプの値を指定された精度に切り上げます:ceil(value / <arg>) * <arg>)

    引数: arg (Decimal データ型) -- 切り上げ後の小数点以下桁数。

    collect 収集変換呼び出しの時点までの変換チェーンの変換結果を表示します。収集変換の結果には一意のマーカーが含まれていますが、ラベルを定義することもできます。
    例:
    {
      "start": "PT1H",
      "end": "",
      "table": "mb_demo_drone",
      "limit": 5000,
      "metrics": [
        {
          "metric": "mb_demo_mt_altitude",
          "transforms": [
            {
              "name": "label",
              "arg": "Series Timestamp Values"
            },
            {
              "name": "collect"
            },
            {
              "name": "avg"
            },
            {
              "name": "label",
              "arg": "Average Timestamp Values"
            }
          ]
        }
      ]
    }
    constrainValues 指定された範囲外の値を、対応する最大値または最小値に置き換えます。
    たとえば、次のように指定すると、0 未満の値は 0 に、100 を超える値は 100 に置き換えられます。
    "transforms": [
      {
        "name": "constrainValues",
        "val1": 0,
        "val2": 100
      }
    ]
    引数:
    • val1 (10 進数データ型): 最小値または最大値。
    • val2 (10 進数データ型): 最小値または最大値。
    カウント 時系列を 1 つの系列に集計します。新しい系列には、系列全体で対応する各タイムスタンプの NaN (数値以外) ではない値の数が含まれます。
    derivative タイムスタンプ間の変更率を決定します。各タイムスタンプの値と次のタイムスタンプの値の差をタイムスタンプの期間で除算します。
    注:
    この変換は、系列内の値の数より 1 つ少ない値を返します。
    div 各タイムスタンプの値を指定された数値 (arg) で除算します。

    引数: arg (10 進数:各タイムスタンプの値を除算する数値。

    エンベロープ 2 つの時系列を返します。いずれかの時点における最大値が一方に含まれ、もう一方に最小値が含まれます。
    注:
    NaN は無視されますが、他の戻り値がない場合は返されます。
    exp 指定された基準値を各タイムスタンプの値でべき乗します。

    引数: arg (10 進数データ型) -- 基準値。

    filter 移動平均の生成など、スライディングウィンドウのコンテンツに集計関数を適用します。
    引数:
    • aggregator (アグリゲーターデータ型): 実行するアグリゲーションのタイプ。
    • window (期間データ型): スライディング ウィンドウの期間。
    フロア 各タイムスタンプの値を指定された精度に切り下げます:floor(value / <arg>) * <arg>

    引数: arg (10 進数データ型) -- 切り捨て後の小数点以下桁数。

    fractiles 指定されたアレイの各分数の時系列を返します。各タイムスタンプ値は、入力系列全体の対応するタイムスタンプに関して、指定された値の分数が、指定された割合を下回っている値です。たとえば、分数が 0.5 の場合、タイムスタンプの値は、入力系列の値の半分が 0.5 未満の値になります。

    引数:arg ( 10 進数のアレイ):入力系列で使用する分数。

    例:
    "transforms": [
      {
        "name": "fractiles",
        "arg": [0.25, 0.5, 0.75, 1]
      }
    ]
    groupBy 集計された変換を収集または適用する前に、指定されたフィールドでデータをグループ化します。

    引数: arg (文字列):変換結果をグループ化するために使用するテーブル内のフィールドのカンマ区切りリスト。

    例:
     "transforms": [
      {
        "name": "groupBy",
        "arg": "model"
      },
      {
        "name": "avg"
      },
      {
        "name": "label",
        "arg": "Model: %g"
      }
    ]
    integrate 各タイムスタンプの値をその期間で乗算します。
    interpolate 隣接するデータ値から補間して NaN データアイテムのデータ値を作成します。

    引数:arg (整数):非 NaN 値をチェックする各方向のデータサンプルの数。非 NaN 値が見つからない場合は、NaN が使用されます。

    inverse 各タイムスタンプ値の反転を計算します。
    iqr 四分位範囲変換を実行し、次の 4 つの系列を含む結果セットを作成します。
    1. -IQR:以下のすべてのエントリの中央値 Q1 - (1.5 * IQR)
    2. Q1:エントリの最小の半分の中央値。
    3. Q3:エントリの最大の半分の中央値。
    4. -IQR:上のすべてのエントリの中央値 Q3 + (1.5 * IQR)
    注:
    IQR = Q3 - Q1
    label 変換チェーンにラベルを付けます。
    注:
    後続の変換でラベルが変更されるか、ラベルが置き換えられる場合があります。
    引数: arg (文字列) :ラベルのテキスト。次の書式設定式を含めることができます。
    • %%:「%」リテラルをエスケープします。
    • %l:置換される現在のラベル。
    • %s:系列の件名。
    • %g:グループ化フィールドの値。これが参照レコードの場合、レコードの名前フィールドの値。groupBy 変換で複数のグループが指定されている場合、ラベルはカンマで区切られます。
    • %G:グループ化フィールドの値。これが参照レコードの場合、レコードの sys_id。複数のグループが選択されている場合、値はカンマで区切られます。
    例:
    "transforms": [
      {
        "name": "label",
        "arg": "Series Timestamp Values"
      },
    ]
    "transforms": [
      {
        "name": "groupBy",
        "arg": "model"
      },
      {
        "name": "avg"
      },
      {
        "name": "label",
        "arg": "Model: %g"
      }
    ]
    limit 最後に保存された値から始めて、指定された期間または値の数の最大値を返します。
    引数:
    • arg (整数):各時系列に対して返すタイムスタンプ値の数。

      OR

    • arg (期間データ型): 各時系列を制限する期間。
    log 各タイムスタンプの値に対して対数計算を実行します。結果は、タイムスタンプ値の指定された基準値の対数です。

    引数: arg (10 進数データ型) -- 対数計算の基数。

    mapValues 指定された範囲内 (包含) の値を指定された値に置き換えます。lowerBoundupperBound の両方が NaN として指定されている場合、NaN 値を targetValueに置き換えます。
    引数:
    • lowerBound (10 進数データ型): 範囲内の最小値。
    • upperBound (10 進数データ型): 範囲内の最大値。
    • targetValue (10 進数データ型): 置換値。
    たとえば、次の例では、.1 と .9 の間の時系列のすべての値を 1 に変更します。
    "transforms": [
      {
        "name": "mapValues",
        "lowerBound": .1,
        "upperBound": .9,
        "targetValue": 1
      }
    ]
    max 入力全体の対応する各タイムスタンプの最大値を含む系列を返します。
    median 系列のセット全体の各タイムスタンプの値の中央値を含む系列を作成します。
    n 系列がある場合:
    • n が奇数の場合、中央値はタイムスタンプの (n / 2 + 1) 値です。
    • n が偶数の場合、中央値はタイムスタンプの (n / 2) 値と (n / 2 + 1) 値の平均です。
    min 入力全体の対応する各タイムスタンプの最小値を含む系列を返します。
    mul 各タイムスタンプの値を指定された数値で乗算します。

    引数: arg (10 進数データ型) -- 各タイムスタンプの値を乗算する数値。

    パーティション

    指定された集計関数を重複しないウィンドウに適用することによって、値をフィルタリングして新しい系列を生成します。

    引数:
    • aggregator (アグリゲーターデータ型): 実行するアグリゲーションのタイプ。
    • window (Duration データ型): アグリゲーターを適用する重複しないウィンドウの期間。
    • base (DateTime データ型): パーティション分割に使用するゼロ オフセット。たとえば、日 (24 時間) で分割するには、この値をタイムゾーンの月曜日の午前 0 時に設定します。30 日間でパーティション化するには、この値を直近の月の最初の日に設定します。

      デフォルト:EPOCH の先頭。

    pow 各タイムスタンプ値を指定された値でべき乗します。

    引数: arg (10 進数データ型) -- 各値を上げるべき乗。

    product 選択した測定基準系列を、各タイムスタンプのすべての値の積を含む 1 つの系列に集計します。NaN は除外されます。系列内のすべての数値が NaN の場合、出力も NaN になります。
    resample 固定数のポイントに、またはある頻度から別の頻度に時系列をリサンプルします。

    リサンプル変換を使用して、結果セット内のサンプル数を減らし、表示するサンプル数により密接に一致するようにします。

    引数:この変換にはさまざまな引数を渡すことができます。可能な各引数グループのリストを以下に示します。単一の変換内で渡すことができるこれらの引数グループは 1 つだけです。次の引数グループは AND/OR で区切られます。AND は、引数が現在のグループの一部であることを意味します。OR は、新しい引数グループの開始を意味します。
    • arg (整数):結果セットに含めるサンプルの数。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。この数よりも多くのサンプルがある場合は、平均化されて減少します。

      OR

    • arg (Duration データ型): リサンプリングする頻度。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。この数よりも多くのサンプルがある場合は、平均化されて減少します。

      OR

    • minValues (整数):結果セットに含めるサンプルの最小数。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。

      AND

    • maxValues (整数):結果セットに含めるサンプルの最大数。この数よりも多くのサンプルがある場合は、平均化されて減少します。

      OR

    • aggregator (アグリゲーターデータ型): リサンプリング時に使用するアグリゲーター。

      AND

    • values (整数):結果セットに含めるサンプルの数。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。この数よりも多くのサンプルがある場合は、指定した aggregator がそれらに適用されて減少します。

      OR

    • aggregator (アグリゲーターデータ型): リサンプリング時に使用するアグリゲーター。

      AND

    • period (期間データ型): リサンプリングする頻度。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。この数よりも多くのサンプルがある場合は、指定した aggregator がそれらに適用されて減少します。

      OR

    • aggregator (アグリゲーターデータ型): リサンプリング時に使用するアグリゲーター。

      AND

    • minValues (整数):結果セットに含めるサンプルの最小数。利用可能なサンプルがこの数よりも少ない場合、エンドポイントは、補間を使用して追加のサンプルを作成します。

      AND

    • maxValues (整数):結果セットに含めるサンプルの最大数。この数よりも多くのサンプルがある場合は、平均化されて減少します。
    round 各タイムスタンプの値を指定された精度に切り上げます:(value / <arg>) * <arg>

    引数: arg (10 進数データ型) -- 切り上げ後の小数点以下桁数。

    root 指定されたインデックスを使用して、各タイムスタンプ値のルートを計算します。

    引数: arg (10 進数データ型) -- ルートのインデックス。

    たとえば、次の例では、各タイムスタンプの平方根が返されます。
    "transforms": [
      {
        "name": "root",
        "arg": "2"
      },
    ]
    stddev 系列のセット全体の各タイムスタンプの値の標準偏差を含む系列を作成します。
    sub 各タイムスタンプの値から指定された数値を減算します。

    引数:arg (数値):各タイムスタンプの値から減算する数値。

    sum 選択した測定基準系列を、NaN を除く各タイムスタンプのすべての値の合計を含む 1 つの系列に集計します。系列内のすべての数値が NaN の場合、出力は NaN になります。
    timeshift 値を変更せずに、指定されたオフセットを値のタイムスタンプに追加することで、時間範囲をシフトします。この変換を使用して、タイムスタンプを別のタイムゾーンにシフトします。

    引数: arg (期間データ型) -- シフトする時間の長さ。

    最大値を含む指定された数の系列を返します。

    引数: arg (整数) – 返される系列の数。

    たとえば、次の場合、最も大きい値のセットを含む 2 つの時系列が返されます。
    "transforms": [
      {
         "name": "top",
         "arg": 2
      }
    ]
    データタイプ 説明
    集計関数 変換内で使用できる集計関数。
    • AVG:現在選択されているすべての系列の算術平均を計算します。
    • CHISQUARE:統計モデルが測定基準データセットにどの程度適合するかを示します。
    • LAST:期間のウィンドウ内で最後に定義された値を返します。
    • MAX:測定基準データセットの各時点での最大値を示します。
    • MEDIAN:測定基準データセットの中央値を示します。中央値は、測定基準データセットの高い方の値と低い方の値を分離します。
    • MIN:測定基準データセットの各時点での最小値を示します。
    • STDDEV:基になるデータ間の標準偏差を計算します。測定基準データセット内の一連のデータ値の変動または分散を定量化するために使用されます。
    • SUM:現在選択されているすべての系列の合計を計算します。
    DateTime 絶対日付/時刻値は、ISO 8601 の日付と時刻形式 YYYY-MM-DDThh:mm:ss で指定されます。例:2020-02-28T13:10:42

    各項目の意味は次のとおりです。

    • [YYYY]:4 桁の年。
    • [MM]:01 ~ 12 のゼロパディングされた月。
    • [DD]:01 ~ 31 のゼロパディングされた日。
    • T:時間を表し、時間コンポーネントが指定される前に必須です。
    • [hh]:00 〜 23 のゼロパディングされた時間。
    • [mm]:00 〜 59 のゼロパディングされた分。
    • [ss]:00 〜 59 のゼロパディングされた秒。うるう秒は前の 1,000 秒間に均等に分散されます。

    相対日付/時刻値は、現在の時刻から減算される期間 (Duration データ型) を使用して指定されます。

    例:P7D = 7 日前。

    10 進数 次のいずれかの 10 進値。
    • 指数表記を使用できる任意精度の符号付き 10 進数。

      例:

      • 2
      • 1.7
      • -3.47
      • 1.0E+2
    • 次の文字列表現:
      • 指数表記を使用することができ、倍精度の 64 ビット IEEE 754 浮動小数点数であることが保証されている符号付き 10 進数。
      • 「NaN」
      • 「-Infinity」
      • 「+Infinity」
    期間 時間間隔の時間。期間の値は ISO 8601 期間形式で指定されます: P[n]Y[n]M[n]DT[n]H[n]M[n]S
    各項目の意味は次のとおりです。
    • P:期間指定子。「期間」と呼ばれ、常に期間の先頭に配置されます。
    • [n]Y:年数。
    • [n]M:月数。
    • [n]D:日数。
    • T:時間指定子。時間コンポーネントが指定される前に必須です。
    • [n]H:時間数。
    • [n]M:分数。
    • [n]S:秒数。
    例:
    • P7D:7 日間の期間。
    • P1M:1 か月の期間。
    • PT15M:15 分間の期間。
    • P1DT12H:1 日と 12 時間の期間。

    cURL 要求

    次の例は、このエンドポイントを呼び出して、mb_demo_drone テーブルの測定基準の JSON ストリームを返す方法を示しています。注意:この例のオブジェクトは、読みやすいように複数の行に展開されていますが、実際の結果では、返された各オブジェクトが個別の行に表示されます。--header "Accept:application/octet-stream" \ を設定することで、同じ呼び出しを行ってオクテットストリームを返すことができます。

    curl "localhost:8080/api/now/v1/clotho/transform/stream" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --user "username":"password" \
    -d "{\
      \"start\": \"PT5M\",\
      \"end\": \"\",\
      \"table\": \"mb_demo_drone\",\
      \"query\": \"fleet.nameSTARTSWITHB\",\
      \"limit\": 5000,\
      \"metrics\": [\
        {\
          \"metric\": \"mb_demo_mt_altitude\",\
          \"label\": \"Series - Avg\",\
          \"transforms\": [\
            {\
              \"name\": \"partition\",\
              \"arg\": {\
                \"aggregator\": \"AVG\",\
                \"window\": \"PT5M\"\
              }\
            },
            {\
              \"name\": \"avg\"\
            }\
          ]\
        },
        {\
          \"metric\": \"mb_demo_mt_altitude\",\
          \"groupBy\": \"fleet\",\
          \"label\": \"Fleet - AVG\",\
          \"transforms\": [\
            {\
              \"name\": \"partition\",\
              \"arg\": {\
                \"aggregator\": \"AVG\",\
                \"window\": \"PT5M\"\
              }\
            },
            {\
              \"name\": \"avg\"\
            }\
          ]\
        }\
      ]\
    }"

    応答:

    [
      {
        "label": "Series - Avg",
        "tags": [
          "#4fb1114f-2426-4acb-8e3e-6435dd62134c"
        ],
        "species": "DOUBLE_SIGNAL",
        "range": [
          "2022-06-16T17:50:00Z",
          "2022-06-16T17:50:00Z"
        ],
        "values": [
          132.86805196126303
        ],
        "period": 300
      },
      {
        "label": "Fleet - AVG",
        "tags": [
          ":fleet:86fac11787333200a328c5b836cb0b4e:Bantams",
          "#6641aab4-c55f-4d11-8846-26b0b706ec1c"
        ],
        "species": "DOUBLE_SIGNAL",
        "range": [
          "2022-06-16T17:50:00Z",
          "2022-06-16T17:50:00Z"
        ],
        "values": [
          134.3775875908988
        ],
        "period": 300
      },
      {
        "label": "Fleet - AVG",
        "tags": [
          "#6641aab4-c55f-4d11-8846-26b0b706ec1c",
          ":fleet:4afac11787333200a328c5b836cb0b4e:Bumble Untd"
        ],
        "species": "DOUBLE_SIGNAL",
        "range": [
          "2022-06-16T17:50:00Z",
          "2022-06-16T17:50:00Z"
        ],
        "values": [
          129.02530271356756
        ],
        "period": 300
      }
    ]

    次の cURL の例では、CSV 形式オプションを使用して、メトリックベースデモプラグインの mb_demo_drone [ドローン] テーブルに保存されている各ドローンの最終日の高度値 (「mb_demo_mt_altitude」としてデータベースに保存) をストリーミングバックします。この例では、データは、ドローンを識別する対象者のSys_id、値のタイムスタンプ、高度値の 3 つの列を持つ狭いテーブル形式で返されます。

    curl "https://instance.servicenow.com/api/now/v1/clotho/transform/stream" \
    --request POST \
    --header "Accept:text/csv;format=narrow" \
    --header "Content-Type:application/json" \
    --user "user name":"password" \
    -d "{\
      \"start\": \"P1D\",\
      \"end\": \"\",\
      \"table\": \"mb_demo_drone\",\
      \"metrics\": [\
        {\
          \"metric\": \"mb_demo_mt_altitude\",\
          \"transforms\": []\
        }]\
    }"

    出力:

    Subject, Timestamp,"mb_demo_drone|mb_demo_mt_altitude"
    "a66b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,92.84400939941406
    "a66b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,92.2428970336914
    "6a6b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,92.0076904296875
    "ea6b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,97.3113021850586
    "a66b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,108.49791717529297
    "6a6b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,109.04239654541016
    "6a6b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,93.72159576416016
    "ee6b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,107.69989776611328
    "ee6b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,100.86473083496094
    "ee6b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,95.77774047851562
    "666b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,105.19712829589844
    "666b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,105.92308807373047
    "6e6b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,93.59339141845703
    "666b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,94.51266479492188
    "e26b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,105.4367904663086
    "6e6b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,94.64836883544922
    "6e6b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,94.78523254394531
    "e26b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,96.99283599853516
    "aa6b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,106.67017364501953
    "e26b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,94.2446517944336
    "aa6b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,91.659912109375
    "226b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,99.5401840209961
    "226b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,98.13501739501953
    "226b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,92.2428970336914
    "226b051787333200a328c5b836cb0b90",2022-11-07T22:35:00Z,106.41876983642578
    "aa6b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,107.69989776611328
    "626b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,92.96666717529297
    "e66b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,93.85079193115234
    "e66b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,96.07303619384766
    "e66b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,98.47595977783203
    "2a6b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,95.9247055053711
    "226b051787333200a328c5b836cb0b9a",2022-11-07T22:35:00Z,99.5401840209961
    "2a6b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,103.1417465209961
    "2a6b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,96.99283599853516
    "ae6b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,94.64836883544922
    "ae6b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,101.8689956665039
    "ae6b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,107.4388198852539
    "a26b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,94.78523254394531
    "266b051787333200a328c5b836cb0b93",2022-11-07T22:35:00Z,94.51266479492188
    "2e6b051787333200a328c5b836cb0b97",2022-11-07T22:35:00Z,108.49791717529297
    "2e6b051787333200a328c5b836cb0b91",2022-11-07T22:35:00Z,97.15129852294922
    "2e6b051787333200a328c5b836cb0b94",2022-11-07T22:35:00Z,103.36128997802734
    "a26b051787333200a328c5b836cb0b92",2022-11-07T22:35:00Z,100.47681427001953
    "266b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,103.5830078125
    "266b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,97.3113021850586
    "a26b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,105.92308807373047
    "ea6b051787333200a328c5b836cb0b98",2022-11-07T22:35:00Z,95.34477996826172
    "ea6b051787333200a328c5b836cb0b95",2022-11-07T22:35:00Z,100.47681427001953
    "626b051787333200a328c5b836cb0b99",2022-11-07T22:35:00Z,100.86473083496094
    "626b051787333200a328c5b836cb0b96",2022-11-07T22:35:00Z,106.9239730834961

    MetricBase 時系列 - POST /now/clotho/put

    メトリックベース データベースに時系列データを追加します。

    URL 形式

    バージョニングされた URL:/api/now/{api_version}/clotho/put

    サポートされている要求パラメーター

    表 : 33. パスパラメーター
    名前 説明
    api_version アクセスするエンドポイントのバージョン。たとえば、v1v2。最新以外のエンドポイントバージョンを使用する場合にのみ、この値を指定してください。

    データタイプ:文字列

    表 : 34. クエリパラメーター
    名前 説明
    sysparm_ignore_unknown_series 不明な系列を無視し、エラーを返さずにトランザクションを続行するかどうかを示すフラグ。
    有効な値:
    • true:不明な系列を無視します。
    • false:不明な系列を無視しません。

    デフォルト:true

    表 : 35. 要求本文パラメーター (XML または JSON)
    名前 説明
    seriesRef 必須です。更新する情報。

    データタイプ:アレイ

    "seriesRef": [
      {
        "metric": "String",
        "subject": "String",
        "table": "String"
      }
    ]
    seriesRef.metric 必須です。更新する測定基準の名前。

    データタイプ:文字列

    seriesRef.subject 必須です。データを更新するレコードの sys_id。seriesRef.table で指定されたテーブルにあります。

    データタイプ:文字列

    seriesRef.table 必須です。データを保存するテーブルの名前。

    データタイプ:文字列

    values 必須です。保存する系列値。

    データタイプ:アレイ

    "values": [
      {
        "timestamp": "String",
        "value": Number
      }
    ]
    values.timestamp 必須です。値の ISO 8601 タイムスタンプ。

    データタイプ:文字列

    形式:YYYY-MM-ddTHH:mm:ddZ

    ISO 形式のタイムスタンプで UTC タイムゾーンを示す末尾の「Z」はオプションです。

    values.value 必須です。測定基準値。

    データタイプ:数値

    ヘッダー

    次のリクエストや応答ヘッダーは、この HTTP アクションにのみ適用されるか、またはこのアクションに別個の方法で適用されます。REST API で使用される一般的なヘッダーのリストについては、「 サポートされている REST API ヘッダー」を参照してください。

    表 : 36. 要求ヘッダー
    ヘッダー 説明
    承認 応答本文のデータフォーマット。application/json のみをサポートします。
    Content-Type 要求本文のデータ形式。application/json のみをサポートします。
    表 : 37. 応答ヘッダー
    ヘッダー 説明
    なし

    ステータスコード

    この HTTP アクションには、次のステータスコードが適用されます。REST API で使用される可能性のあるステータスコードのリストについては、「 REST API HTTP 応答コード」を参照してください。

    表 : 38. ステータスコード
    ステータスコード 説明
    200 成功。要求が正常に処理されました。
    401 権限がありません。ユーザー資格情報が間違っているか、渡されていません。
    500 内部サーバーエラー。要求の処理中に予期しないエラーが発生しました。応答に、エラーに関する追加情報が含まれます。

    応答本文のパラメーター (JSON または XML)

    名前 説明
    message 要求のステータスを示すメッセージ (要求が正常に処理された場合は ok など)。

    cURL 要求

    curl "https://instance.servicenow.com/api/now/v1/clotho/put" \
    --request POST \
    --header "Accept:application/json" \
    --header "Content-Type:application/json" \
    --data "{
      \"seriesRef\": {
        \"subject\": \"3D666b051787333200a328c5b836cb0b92\",
        \"table\": \"mb_demo_drone\",
        \"metric\": \"mb_demo_mt_altitude\"
      },
      \"values\": [
        {
          \"timestamp\": \"2019-03-21T17:05:00Z\",
          \"value\": 0.150185
        },
        {
          \"timestamp\": \"2019-03-21T17:06:00Z\",
          \"value\": 0.46074
        },
        {
          \"timestamp\": \"2019-03-21T17:07:00Z\",
          \"value\": 0.83104
        },
        {
          \"timestamp\": \"2019-03-21T17:08:00Z\",
          \"value\": 1.260635
        },
        {
          \"timestamp\": \"2019-03-21T17:09:00Z\",
          \"value\": 1.749
        }
      ]
    }" \
    --user "username":"password"
    {
        "result": {
            "message": "ok"
        }
    }