Hitachi

JP1 Version 12 JP1/Integrated Management 2 - Manager コマンド・定義ファイル・APIリファレンス


5.11.2 時系列データ取得

機能

指定したIM管理ノードのSID,およびメトリックに応じた時系列データを取得します。

実行権限
  • JP1_Console_Admin

  • JP1_Console_Operator

  • JP1_Console_User

APIのバージョン

v1

形式
リクエスト行
POST /application/component/apiVersion/nodes/timeSeries httpVersion
リクエストのメッセージボディー
{
    "sid" : IM管理ノードのSID
    "metric": メトリック名,
    "startTime": 開始時刻,
    "endTime": 終了時刻,
    "countPerInstance":インスタンス当たりのデータ数の上限,
    "instanceCount":インスタンス数の上限,
}
レスポンスのメッセージボディー
{
    "metric":"メトリック",
    "timeSeriesData":[
        {
            "instance":"インスタンス名",
            "unit":"単位",
            "data":[
                {"time":"時刻","value": },
                                 ・・・
          ]
      },
      ・・・
    ] ,
    "exceedCountDetected": {
        "countPerInstance": インスタンスごとのデータ数上限超過検知有無,
        "instanceCount": インスタンス数の上限超過検知有無
    },
    "messageId":"メッセージID",
    "message":"メッセージ"
}
パラメーター
sid

SID(管理オブジェクトID)を指定します。このパラメーターは省略できません。

metric

取得するメトリックを指定します。このパラメーターは省略できません。

半角英数字と以下の記号で,1〜255文字以内で指定します。

-(ハイフン),_(アンダーバー)

startTime

時系列データの開始日時をISO 8601形式のUTC時刻で指定します。このパラメーターは省略できません。小数点以下の秒数は指定できません。

endTime

時系列データの終了日時をISO 8601形式のUTC時刻で指定します。このパラメーターは省略できません。小数点以下の秒数は指定できません。

countPerInstance

取得する1インスタンスあたりのデータ数の上限を指定します。指定できる範囲は,1〜30,000です。countPerInstanceパラメーターとinstanceCountパラメーターを掛けた数値が30,000以下となるように指定してください。指定を省略した場合は,60が仮定されます。

instanceCount

取得するインスタンス数の上限を指定します。指定できる範囲は,1〜30,000です。countPerInstanceパラメーターとinstanceCountパラメーターを掛けた数値が30,000以下となるように指定してください。指定を省略した場合は,10が仮定されます。

ステータスコード

ステータスコード

メッセージ

説明

200

なし

時系列データ取得REST APIの処理が成功しました。

KAJY22012-W

上限値を超えたため,返却されないデータが存在します。

400

KAJY22010-E

時系列データ取得REST APIのパラメーターの指定が不正なため,時系列データ取得REST APIを実行できません。

KAJY22011-E

存在しないSIDが指定されています。

403

KAJY01000-E

REST APIの実行権限がありません。

500

KAJY22006-E

時系列データの取得に失敗しました。

KAJY22008-E

取得したデータが不正です。

戻り値

ステータスコードが200の場合に,レスポンスボディーに次の情報を返却します。

項番

メンバー名

データ型

説明

1

timeSeriesData

object[]

取得した時系列データを配列として返却します。

2

metric

string

メトリック名が設定されます。

3

instance

string

インスタンス名が設定されます。

設定されていない場合は,省略されます。

4

unit

string

メトリックの単位が設定されます。

5

data

object[]

時刻,値のデータを配列として返却します。

6

time

string

時系列データの時刻がISO 8601形式のUTC時刻で設定されます。小数点以下の秒数は指定されません。

7

value

number

データの値が設定されます。

8

exceedCountDetected

object

パラメーターの指定値が上限を超えたことの検知有無です。パラメーターごとにメンバーを持ちます。

9

countPerInstance

boolean

1インスタンスあたりのデータ数が上限を超えたことの検知有無です。

  • true:検知した

  • false:検知しない

10

instanceCount

boolean

インスタンス数が上限を超えたことの検知有無です。

  • true:検知した

  • false:検知しない

11

messageId

string

メッセージIDです。

通知するメッセージが存在しない場合は省略されます。

12

message

string

メッセージ本文です。

使用される言語は,HTTPリクエストヘッダーのAccept-Languageプロパティの指定内容により決まります。

通知するメッセージが存在しない場合は省略されます。

使用例

管理オブジェクトであるPFMエージェントのサービス(sid:_JP1PFM-M_HOST2/_JP1PFM-AHOST_HOST20/_HOST_HOST20/_JP1PFM-A_serviceID)の時系列データを取得するAPIの使用例を次に示します。

リクエスト:
POST http://hostname:20703/im/api/v1/nodes/timeSeries
{
    "sid":"_JP1PFM-M_HOST2/_JP1PFM-AHOST_HOST20/_HOST_HOST20/_JP1PFM-A_serviceID",
    "metric":"cpu_used_rate",
    "startTime":"2019-05-22T00:00:00Z",
    "endTime":"2019-05-22T01:00:00Z",
    "countPerInstance":60,
    "instanceCount":10
}
レスポンス:
{
    "metric":"cpu_used_rate",
    "timeSeriesData":[
            {
                 "unit":"%",
                 "data":[
                  {"time":"2019-05-22T00:00:00Z","value":14.04},
                               ・・・
              ]
          }
    ],
    "exceedCountDetected": {
        "countPerInstance": true,
        "instanceCount": false
    }
}