查看 Application Integration 支援的連接器

暫停工作

暫停工作可讓您暫時暫停,然後繼續執行整合作業。

在整合執行期間,當控制項到達暫停任務時,執行作業會暫停,且暫停任務後的所有任務都會暫停。發生下列任一事件時,整合會繼續執行:

  • 指定的停權時間到期。
  • 收到 Suspensions API 的繼續執行要求後。

您也可以為暫停工作設定輸出變數 (暫停結果),並將其設為任何值,然後使用該值建立分支條件,以便執行下游工作。

比較核准工作、暫停工作和計時器工作

這三項任務 (ApprovalSuspendTimer) 都會執行類似的暫停及恢復整合功能。不過,兩者之間還是有些微差異。下表說明這三項工作之間的差異。

審核工作 暫停工作 計時器工作
不支援自動恢復整合,必須手動介入才能恢復整合。 支援手動和自動恢復整合。如果沒有人為介入來撤銷停權處分,系統會在停權時間限制到期後,自動恢復執行整合作業。 僅支援自動恢復整合。在停用時間限制過後,整合作業會自動恢復。
無法透過 API 呼叫恢復整合。您必須使用「整合」使用者介面,手動解決停權問題。 可使用整合專用的 Suspensions API 恢復整合。 僅支援自動恢復整合。
使用者會在整合服務暫停時收到通知。 當整合服務暫停 (已停用) 時,使用者不會收到任何通知。 當整合服務暫停 (已停用) 時,使用者不會收到任何通知。
支援輸出變數 (布林值),可讓您在繼續整合前執行條件檢查。不過,輸出變數的值只能是 truefalse 支援輸出變數 (字串),可讓您在恢復整合前執行條件檢查。您可以將任何值設為輸出變數。 不支援任何輸出變數。

設定暫停工作

如要設定「Suspend」工作,請執行下列步驟:

  1. 前往 Google Cloud 控制台的「Application Integration」頁面。

    前往「應用程式整合」

  2. 在導覽選單中,按一下「整合」

    系統隨即會顯示「Integrations」頁面,列出 Google Cloud 專案中可用的所有整合項目。

  3. 選取現有的整合,或按一下「建立整合」來建立新的整合。

    如果您要建立新的整合功能:

    1. 在「Create Integration」窗格中輸入名稱和說明。
    2. 選取整合作業的區域。
    3. 選取要用於整合的服務帳戶。您隨時可以透過整合工具列中的 「整合摘要」窗格,變更或更新整合作業的服務帳戶詳細資料。
    4. 按一下「建立」,新建立的整合服務會在整合服務編輯器中開啟。

  4. 整合編輯器的導覽列中,按一下「Tasks」,即可查看可用任務和連接器清單。
  5. 在整合服務編輯器中,按一下並放置「Suspend」任務元素。
  6. 按一下設計工具中的「Suspend」任務元素,即可查看「Suspend」任務設定窗格。
  7. 使用任務的設定屬性設定其餘欄位,詳情請參閱下表。

    系統會自動儲存所有屬性變更。

設定屬性

下表說明暫停工作項的設定屬性。

資源 資料類型 說明
Suspension Time 整數 必須暫停整合執行作業的時間 (以分鐘為單位)。時間上限為 44640 分鐘 (31 天),這也是預設值。

如果整合執行作業未在指定的時間限制內恢復,整合會在時間限制到期後自動恢復執行作業,並將 Suspension result 變數的值設為 Expired

Suspension result 字串 用來儲存暫停工作結果的變數。您可以選擇是否將值設為這個變數。您可以根據需求將這個變數設為任何值。如果您想進一步控管整合作業的執行流程,這個變數就很實用。舉例來說,您可以讀取停用結果,並根據任何下游工作中的值設定條件式決策。
Suspension Id 字串 暫停工作專案的專屬 ID。這個變數的值會在暫停整合後立即設定。您可以從整合作業 UI 中的「執行記錄」頁面取得 ID 值。如果您使用 API 觸發整合作業,也可以從 API 的回應物件取得 ID 值。

您可以使用暫停 ID 或整合作業 ID 來恢復整合作業。

使用 Suspensions API 撤銷停權

您可以透過 Suspensions API 呼叫撤銷停權處分。如要使用 Suspensions API 撤銷停權,您必須擁有整合作業的執行 ID,或是「Suspend」工作項的停權 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_IDSUSPENSION_ID。如果您沒有任何 ID 值,可以使用 - 替換值。在這個 API 中,REGIONPROJECTLOCATION 是必填欄位。

撤銷暫停後,整合執行作業就會恢復,並在暫停工作後執行後續工作。

以下範例說明如何使用 suspensions API 撤銷停權。

範例 1:只使用停權 ID 撤銷停權

下列 curl 指令說明如何在只知道停權 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/integrations/-/executions/-/suspensions/c6a13a79-a918-41e2-82b9-32b5a010755a:lift

在本例中,系統會將 Suspension result 變數設為暫停 ID c6a13a79-a918-41e2-82b9-32b5a010755aApproved

範例 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/integrations/-/executions/76a391e7-c801-45d7-8046-eab20d167ec5/suspensions/-:lift

在這個範例中,執行 ID 76a391e7-c801-45d7-8046-eab20d167ec5Suspension result 變數設為 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/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"};

錯誤處理策略

工作錯誤處理策略會指定在工作因暫時性錯誤而失敗時,應採取的動作。如要瞭解如何使用錯誤處理策略,以及不同類型的錯誤處理策略,請參閱「錯誤處理策略」。

配額與限制

如要進一步瞭解配額和限制,請參閱「配額與限制」。

後續步驟