Hitachi

Hitachi Storage Advisor Embedded ガイド 


11.16 commandStatusオブジェクト

commandStatusオブジェクトは、非同期処理のAPIを発行したときに返却されるAPIのステータス情報のオブジェクトです。

commandStatusオブジェクトのスキーマを次に示します。

属性

データ型

説明

id

int

非同期処理のAPI実行時の問い合わせ用ID

progress

string

APIの進捗状況

次の値が返ります。

  • unexecuted:APIが未実行であることを示す
  • processing:APIが実行中であることを示す
  • completed:APIが実行完了したことを示す

status

string

APIの実行結果の状態

次の値が返ります。

  • normal:APIが成功した状態を示す
  • error:APIが失敗した状態を示す

この属性は、APIの実行が完了した場合に出力されます。

affectedResources

string[]

操作対象のリソースにアクセスするためのURLの一覧

1つのAPIで複数のリソースを操作する場合は、すべての操作対象のリソースのURLが返ります。APIが途中で失敗した場合は、処理が完了したことを確認できたリソースのURLだけが返ります。

リソースの削除操作が成功した場合、削除対象のリソースのURLが返ります。このURLにアクセスすると404エラーとなり、正常に削除されたことが確認できます。

この属性は、APIの実行が完了した場合に出力されます。

error

Error Object

エラーの情報を保持するオブジェクト

この属性は、APIの実行が失敗した場合に出力されます。

operationDetails

object[]

操作対象のリソースの詳細情報

リソース種別に示すリソースに対して操作している場合に出力されます。

  • operationType(string)

    リソースに対する操作種別

    • CREATE:リソースが作成されたことを示す
    • UPDATE:リソースが変更されたことを示す
    • DELETE:リソースが削除されたことを示す
  • resourceType(string)

    作成、変更、または削除が発生したリソースのリソース種別

    • CommandStatus:非同期処理のAPIのステータス情報に関するリソースであることを示す
    • Pool:プールに関するリソースであることを示す
    • Port:ポートに関するリソースであることを示す
    • Server:サーバに関するリソースであることを示す
    • Snapshot:スナップショットに関するリソースであることを示す
    • Volume:ボリュームに関するリソースであることを示す
    • VolumeServerConnection:ボリュームとサーバの接続に関するリソースであることを示す
    • ExternalVolume:外部ボリュームに関するリソースであることを示す
    • QuorumDisk:Quorumディスクに関するリソースであることを示す
  • resourceId(string)

    作成、変更、または削除が発生したリソースのリソースID

メモ
  • オブジェクトの情報は最大で65280件保持されます。65280件を超えたAPIのステータス情報は、非同期処理のAPIのステータス情報を削除するAPIを実行してオブジェクトの情報を削除してください。
  • セッションがログアウトされた場合もオブジェクトの情報は削除されます。

APIの実行を開始した場合のcommandStatusオブジェクト例:

{
  "id": 1,
  "progress": "processing"
}

APIが成功して完了した場合のcommandStatusオブジェクトの例:

{
  "id": 2,
  "progress": "completed",
  "status": "normal",
  "affectedResources": [
    "/ConfigurationManager/simple/v1/objects/volumes/100"
  ],
  "operationDetails": [
    {
      "operationType": "CREATE",
      "resourceType": "Volume",
      "resourceId": "100"
    }
  ]
}

APIが失敗して完了した場合のcommandStatusオブジェクトの例:

{
  "id": 3,
  "progress": "completed",
  "status": "error",
  "errorResource": "/ConfigurationManager/simple/v1/objects/pools/63",
  "errorCode": {
    "SSB1": "2e11",
    "SSB2": "001f"
  },
  "errorMessage": "Snapshot or volume exists. Operation could not be completed.",
  "operationDetails": [
    {
      "operationType": "DELETE",
      "resourceType": "Pool",
      "resourceId": "63"
    }
  ]
}