一時停止タスクでは、統合の実行を一時停止して再開できます。
統合の実行時、コントロールが一時停止タスクに到達すると、実行は一時停止され、一時停止タスクより後のすべてのタスクが一時停止されます。統合は、次のいずれかのイベントが発生すると実行を再開します。
- 指定した停止時間の有効期限が切れる。
Suspensions
API から再開実行リクエストを受信した後。
一時停止タスクに出力変数(一時停止の結果)を構成して任意の値を設定し、その値を使用して下流のタスクを実行するための分岐条件を作成することもできます。
承認タスク、一時停止タスク、タイマータスクを比較する
3 つのタスク(承認、一時停止、タイマー)はすべてインテグレーションの一時停止と再開と同様の機能を実行します。ただし、それらにはわずかな違いがあります。次の表に、3 つのタスクの違いを示します。
承認タスク | 一時停止タスク | タイマータスク |
---|---|---|
インテグレーションの自動再開はサポートされていません。インテグレーションを再開するには手動での操作が必要です。 | インテグレーションの手動再開と自動再開の両方をサポートしています。一時停止を取り消すための手動操作がない場合、インテグレーションは一時停止期限の経過後に実行を自動的に再開します。 | インテグレーションの自動再開のみをサポートしています。インテグレーションの実行は、一時停止の期限を経過すると自動的に再開されます。 |
API 呼び出しではインテグレーションを再開できません。インテグレーション UI を使用して手動で一時停止を解決する必要があります。 | インテグレーション用の Suspensions API を使用してインテグレーションを再開できます。 |
インテグレーションの自動再開のみをサポートしています。 |
インテグレーションが停止(一時停止)すると、ユーザーが通知を受け取ります。 | インテグレーションが停止(一時停止)しても、ユーザーは通知を受け取りません。 | インテグレーションが停止(一時停止)しても、ユーザーは通知を受け取りません。 |
出力変数(ブール値)がサポートされます。これにより、インテグレーションを再開する前に条件付きチェックを実行できます。ただし、出力変数の値は true または false のいずれかに限られます。 |
出力変数(文字列)がサポートされます。これにより、インテグレーションを再開する前に条件付きチェックを実行できます。出力変数には任意の値を設定できます。 | 出力変数はサポートしていません。 |
一時停止タスクを構成する
一時停止タスクを構成するには、次の操作を行います。
- Apigee UI で、Apigee 組織を選択します。
- [Develop] > [Integrations] の順にクリックします。
- 既存のインテグレーションを選択するか、[Create Integration] をクリックして新しいインテグレーションを作成します。
新しいインテグレーションを作成する場合:
- [Create Integration] ダイアログで名前と説明を入力します。
- サポートされているリージョンのリストから、インテグレーションのリージョンを選択します。
- [Create] をクリックします。
インテグレーション デザイナーでインテグレーションが開きます。
- インテグレーション デザイナーのナビゲーション バーで、[+ Add a task/trigger] > [Tasks] の順にクリックして、使用可能なタスクのリストを表示します。
- 統合エディタで [Suspend] タスク要素をクリックして配置します。
- デザイナーの [Suspend] タスク要素をクリックして、[Suspend] タスク構成ペインを表示します。
- 次の表に示すように、残りの項目はタスクの構成プロパティを使用して設定します。
プロパティへの変更は自動的に保存されます。
構成プロパティ
次の表は、一時停止タスクの構成プロパティを示しています。
プロパティ | データ型 | 説明 |
Suspension Time
|
整数 | 統合の実行を一時停止しておく時間(分)。最大時間制限は 44,640 分(31 日)で、これはデフォルト値でもあります。 指定した時間制限内で統合の実行が再開されない場合、統合は制限時間が経過した後に自動的に実行を再開し、 |
Suspension result
|
文字列 | 一時停止タスクの結果を格納する変数。この変数への値の設定は任意です。この変数は、要件に応じて任意の値に設定できます。この変数は、統合の実行フローをよりきめ細かく制御する場合に役立ちます。たとえば、一時停止結果を読み取り、下流のタスクの値に基づいて条件付きの決定を構成できます。 |
Suspension Id
|
文字列 | 一時停止タスクの一意の識別子。この変数の値は、統合が一時停止された直後に設定されます。ID の値は、統合 UI の [実行ログ] ページで取得できます。API を使用して統合をトリガーする場合は、API のレスポンス オブジェクトから識別子の値を取得することもできます。 統合の実行を再開するには、一時停止 ID を使用するか、統合の実行 ID を使用します。 |
Suspensions API で一時停止を取り消す
Suspensions API を使用すると、API 呼び出しによって一時停止を取り消すことができます。Suspensions API を使用して一時停止を取り消すには、統合の実行 ID または一時停止タスクの一時停止 ID が必要です。一時停止を取り消すには、次の API に POST
リクエストを発行する必要があります。
https://REGION-integrations.googleapis.com/v1/{name=projects/PROJECT/locations/LOCATION/integrations/INTEGRATION_ID/executions/EXECUTION_ID/suspensions/SUSPENSION_ID}:lift
この API では、INTEGRATION_ID
は省略可能です。ただし、EXECUTION_ID
または SUSPENSION_ID
を指定する必要があります。ID 値がない場合は、値を -
に置き換えることができます。この API では、REGION
、PROJECT
、LOCATION
は必須項目です。
一時停止を取り消すと、統合実行は一時停止タスクの後に下流のタスクを再開して実行します。
次の例では、Suspensions API を使用して一時停止を取り消します。
例 1: 一時停止 ID のみを使用して一時停止を取り消す
curl -H "Authorization: Bearer $TOKEN" \ -H "Content-type: application/json" \ -H X-GFE-SSL: yes \ -X POST \ -d '{"suspension_result":"Approved"}' \ https://us-east1-integrations.googleapis.com/v1/projects/demo-project/locations/us-east1/products/apigee/integrations/-/executions/-/suspensions/c6a13a79-a918-41e2-82b9-32b5a010755a:lift
この例では、Suspension result
変数が一時停止 ID c6a13a79-a918-41e2-82b9-32b5a010755a
の Approved
に設定されています。
例 2 実行 ID のみを使用して一時停止を取り消す
次の curl
コマンドは、実行 ID のみがある場合に一時停止を取り消す方法を示したものです。
curl -H "Authorization: Bearer $TOKEN" \ -H "Content-type: application/json" \ -H X-GFE-SSL: yes \ -X POST \ -d '{"suspension_result":"true"}' \ https://us-east1-integrations.googleapis.com/v1/projects/demo-project/locations/us-east1/products/apigee/integrations/-/executions/76a391e7-c801-45d7-8046-eab20d167ec5/suspensions/-:lift
この例では、Suspension result
変数が実行 ID 76a391e7-c801-45d7-8046-eab20d167ec5
の true
に設定されています。
例 3: 実行 ID と一時停止 ID の両方を使用して一時停止を取り消す
次の curl
コマンドは、実行 ID と一時停止 ID の両方がある場合に一時停止を取り消す方法を示したものです。
curl -H "Authorization: Bearer $TOKEN" \ -H "Content-type: application/json" \ -H X-GFE-SSL: yes \ -X POST \ -d '{"suspension_result":"{processname: "Release", owner: "John", status: "approved"};"}' \ https://us-east1-integrations.googleapis.com/v1/projects/demo-project/locations/us-east1/products/apigee/integrations/-/executions/9b721baa-0a23-4576-b2b6-d251d163ea6f/suspensions/f01815bf-ed18-4e01-9d41-cc2ce7861e95:lift
この例では、Suspension result
変数が一時停止 ID f01815bf-ed18-4e01-9d41-cc2ce7861e95
の {processname: "Release", owner: "John", status: "approved"};
に設定されています。
エラー処理方式
タスクのエラー処理方法では、一時的なエラーによってタスクが失敗した場合のアクションを指定します。エラー処理方式と、さまざまな種類のエラー処理方式の詳細については、エラー処理方法をご覧ください。