タスクで使用するメソッド
時間がかかり、非同期で実行されるリクエストの処理に、これらのタスクが使用されます。タスクのステータスにより、リクエストで指定した動作の進行状況を監視できます。
タスクのステータスは次のいずれかです:
- Created – タスクが作成済みだが開始されていません。
- Starting – タスクが開始プロセスの途中です。
- Running – タスクが実行中です。このステータスのタスクは、実行の進捗がパーセンテージで表示されます。
- Completed – タスクが正常に完了しました。このステータスのタスクは、タスクの実行結果が表示されます。結果にはタスク固有のデータが含まれます。たとえば、CreateTenant タスクの場合は、新しいテナントの識別子が含まれます。
- Stopping – タスクが完了の準備を進めています。タスクを停止すると、Canceled ステータスに切り替わる前にこのステータスになる場合があります。
- Failed – タスクが失敗しました。このステータスのタスクは、エラーの詳細情報が表示されます。
- Canceled – ユーザーまたはシステムによってタスクが終了されました。このステータスのタスクは、エラーの詳細情報が表示されます。
- Queued – タスクはキューに入り、実行開始を待機している状態です。
Integration Server REST APIを使用して、次のタスクを実行できます:
- タスクのリストの取得
- 特定のタスクに関する情報の取得
- 特定のタスクの実行のキャンセル
タスク情報の取得
タスクに関する情報を識別子で取得します。
メソッド:
GET /api/2.0/virtualization/tasks/{
ID
}
各パラメータの説明:
{
ID
}
- タスクの識別子(必須パラメータ)。
このリクエストが正常に完了すると、REST API はタスクに関する次の情報を返します:
<task id="{ID
}" created="{日時
}" stateChanged="{日時
}" changed="{日時
}">
<state>{ステータス
}</state>
<type>{種別
}</type>
<stage>{ステージ
}</stage>
<progress>{実行の進捗
}</progress>
<result>{結果
}</result>
<!-- タスクの実行が失敗した場合、エラーメッセージが結果の代わりに表示されます。
<error>{エラーメッセージ
}</error>
</task>
各パラメータの説明:
{
ID
}
– タスク ID。created="{
日時
}"
- タスクの作成日時。形式:YYYY-MM-DDThh:mm:ss。stateChanged="{
日時
}"
– タスクの変更日時。形式:YYYY-MM-DDThh:mm:ss。changed="{
日時
}"
- タスクの変更日時。形式:YYYY-MM-DDThh:mm:ss。{
ステータス
}
- タスクのステータス。{
種別
}
- タスクの種別。例:CreateTenant
– テナントの作成処理で使用するタスク。ChangeTenantActivation
– テナントのアクティブ化または非アクティブ化の処理で使用するタスク。DeleteTenant
– テナントの削除処理で使用するタスク。CreateTenantReport
– tテナントの保護レポートの生成処理で使用するタスク。
{
名前
}
- タスク名。{
ステージ
}
- タスク実行のステージ。{
実行の進捗
}
– タスクの進捗状況をパーセンテージで示します。{
結果
}
- タスクの実行結果。例:作成したテナントの情報またはレポートの識別子など。{
エラーメッセージ
}
- タスクの実行中にエラーが発生すると、エラーメッセージが表示されます。
リターンコード:
200 (OK)
– リクエストが正常に完了しました。403 (Forbidden)
– リソースへのアクセスが拒否されました。404 (Not Found)
– Integration Server データベース内に、指定した識別子のタスクが見つかりません。
タスクのリストの取得
既存の全タスクのリストと、各タスクに関する情報を取得できます。
メソッド:
GET /api/2.0/virtualization/tasks?createdFrom={日時
}&state={ステータス
}&type={種別
}
各パラメータの説明:
createdFrom={
日時
}
- YYYY-MM-DDThh:mm:ss 形式の日時(任意のパラメータ)。このパラメータを指定すると、指定した日時以降に作成されたタスクがリストに表示されます。state={
ステータス
}
- タスクのステータス(任意のパラメータ)。このパラメータを指定すると、指定したステータスのタスクのみがリストに表示されます。type={
種別
}
- タスクの種別(任意のパラメータ)。このパラメータを指定すると、指定した種別のタスクのみがリストに表示されます。
リターンコード:
200 (OK)
– リクエストが正常に完了しました。レスポンスが、タスクのリストを返します。403 (Forbidden)
– リソースへのアクセスが拒否されました。
タスクのキャンセル
実行中のタスクを中断します。一部のタスクはすぐに完了させることができません。この場合、202 (Accepted)
コードが返され、タスクのステータスが停止中に変更されます。
メソッド:
POST /api/2.0/virtualization/tasks/{ID
}/cancel
各パラメータの説明:
{
ID
}
- タスクの識別子(必須パラメータ)。
リターンコード:
200 (OK)
– リクエストが正常に完了しました(タスクがキャンセルされます)。202 (Accepted)
– リクエストの実行が受諾されました(タスクのステータスが停止中に変更されます)。403 (Forbidden)
– リソースへのアクセスが拒否されました。404 (Not Found)
– 指定した識別子のタスクが見つかりません。405 (Method Not Allowed)
– 子タスクの場合:親タスクをキャンセルした場合にのみ、子タスクをキャンセルできます。409 (Conflict)
– タスクのステータスが既に次のいずれかになっています:Cancelled、Failed、Stopped。