本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 Step Functions 中使用 Workflow Studio 建立工作流程
了解如何使用 Step Functions Workflow Studio 建立、編輯和執行工作流程。工作流程準備就緒後,您可以儲存、執行和匯出它。
建立狀態機器
在工作流程 Studio 中,您可以選擇入門範本或空白範本來建立工作流程。
入門範本是ready-to-run的範例專案,可自動建立工作流程原型和定義,並將專案所需的所有相關 AWS 資源部署至您的 AWS 帳戶。您可以使用這些入門範本以原狀部署和執行,或使用工作流程原型來建置這些範本。如需入門範本的詳細資訊,請參閱使用 Step Functions 的入門範本部署狀態機器。
使用空白範本時,您可以使用設計或程式碼模式來建立自訂工作流程。
使用入門範本建立狀態機器
-
開啟 Step Functions 主控台
,然後選擇建立狀態機器。 -
在選擇範本對話方塊中,執行下列其中一項操作來選擇範例專案:
-
Task Timer
在依關鍵字搜尋方塊中輸入 ,然後從搜尋結果中選擇任務計時器。 -
瀏覽右側窗格中全部列出的範例專案,然後選擇任務計時器。
-
-
選擇 Next (下一步) 繼續。
-
選擇執行示範以建立唯讀且ready-to-deploy的工作流程,或選擇建置在工作流程上,以建立可編輯的狀態機器定義,您可以建置在 和之後的部署上。
-
選擇使用範本以繼續您的選擇。
後續步驟取決於您先前的選擇:
-
執行示範 – 您可以在建立具有 已部署 AWS CloudFormation 至 之資源的唯讀專案之前,檢閱 狀態機器 AWS 帳戶。
您可以檢視狀態機器定義,當您準備好時,請選擇部署並執行 以部署專案並建立 資源。
部署最多可能需要 10 分鐘才能建立資源和許可。您可以使用 Stack ID 連結來監控 中的進度 AWS CloudFormation。
部署完成後,您應該會在 主控台中看到新的狀態機器。
-
在上面建置 – 您可以檢閱和編輯工作流程定義。在嘗試執行自訂工作流程之前,您可能需要為範例專案中的預留位置設定值。
注意
部署至您 帳戶的 服務,可能會收取標準費用。
使用空白範本建立工作流程
當您想要從乾淨的畫布開始,請從空白範本建立工作流程。
設計工作流程
當您知道要新增的狀態名稱時,請使用 頂端的搜尋方塊狀態瀏覽器來尋找。否則,請在瀏覽器中尋找您需要的狀態,並將其新增至畫布。
您可以將工作流程中的狀態拖曳至工作流程中的不同位置,以重新排序。當您將狀態拖曳到畫布上時,會出現一行,顯示狀態將插入工作流程的位置,如下列螢幕擷取畫面所示:

狀態捨棄至畫布後,其程式碼會自動產生,並新增至工作流程定義中。若要查看定義,請開啟 Inspector 面板上的定義切換。您可以選擇使用內建程式碼編輯器程式碼模式編輯定義。
在畫布上捨棄狀態後,您可以在右側的Inspector 面板面板中設定狀態。此面板包含您在畫布上放置的每個狀態或 API 動作的組態、輸入、輸出和錯誤處理索引標籤。您可以在組態索引標籤中設定工作流程中包含的狀態。
例如,Lambda Invoke API 動作的組態索引標籤提供下列選項:
-
狀態名稱:您可以使用自訂名稱識別狀態,或接受預設產生的名稱。
-
API 會顯示 狀態使用的 API 動作。
-
整合類型:您可以選擇用來呼叫其他服務上 API 動作的服務整合類型。
-
函數名稱提供以下選項:
-
輸入函數名稱:您可以輸入函數名稱或其 ARN。
-
在執行時間從狀態輸入取得函數名稱:您可以使用此選項,根據您指定的路徑,動態地從狀態輸入取得函數名稱。
-
選取函數名稱:您可以直接從帳戶和區域中可用的函數中選取。
-
-
承載 :您可以選擇使用狀態輸入、JSON 物件或無承載,將承載傳遞至 Lambda 函數。如果您選擇 JSON,您可以同時包含靜態值和從狀態輸入中選取的值。
-
(選用) 有些狀態可以選擇等待任務完成或等待回呼。如果可用,您可以選擇下列其中一種服務整合模式:
-
未選取選項:Step Functions 將使用請求回應整合模式。Step Functions 會等待 HTTP 回應,然後進入下一個狀態。Step Functions 不會等待任務完成。當沒有可用的選項時,狀態將使用此模式。
-
等待任務完成:Step Functions 將使用執行任務 (.sync)整合模式。
-
等待回呼:Step Functions 將使用使用任務權杖等待回呼整合模式。
-
-
(選用) 若要存取工作流程 AWS 帳戶 中不同 中設定的資源,Step Functions 會提供跨帳戶存取。跨帳戶存取的 IAM 角色提供以下選項:
-
提供 IAM 角色 ARN:指定包含適當資源存取許可的 IAM 角色。這些資源可在目標帳戶中使用,這是您進行跨帳戶呼叫 AWS 帳戶 的 。
-
從狀態輸入在執行時間取得 IAM 角色 ARN:指定包含 IAM 角色的狀態 JSON 輸入中現有鍵/值對的參考路徑。
-
-
下一個狀態可讓您選取您要轉換到下一個的狀態。
-
(選用) 註解欄位不會影響工作流程,但您可以使用它來註釋工作流程。
有些狀態會有額外的一般組態選項。例如,Amazon ECS RunTask
狀態組態包含填入預留位置值API Parameters
的欄位。對於這些狀態,您可以將預留位置值取代為符合您需求的組態。
刪除狀態
您可以按退格鍵,按一下滑鼠右鍵並選擇刪除狀態,或在設計工具列上選擇刪除。
執行您的工作流程
當您的工作流程準備就緒時,您可以執行它,並從 Step Functions 主控台
在 Workflow Studio 中執行工作流程
-
在設計、程式碼或組態模式中,選擇執行。
開始執行對話方塊會在新索引標籤中開啟。
-
在啟動執行對話方塊中,執行下列動作:
-
(選用) 輸入自訂執行名稱以覆寫產生的預設值。
非 ASCII 名稱和記錄
Step Functions 接受包含非 ASCII 字元的狀態機器、執行、活動和標籤名稱。由於這類字元不適用於 Amazon CloudWatch,因此我們建議您僅使用 ASCII 字元,以便在 CloudWatch 中追蹤指標。
-
(選用) 在輸入方塊中,輸入 JSON 格式的輸入值來執行工作流程。
-
選擇 Start execution (開始執行)。
-
Step Functions 主控台會引導您前往標題為執行 ID 的頁面。此頁面稱為執行詳細資訊頁面。在此頁面上,您可以在執行進行時或完成後檢閱執行結果。
若要檢閱執行結果,請在圖形檢視中選擇個別狀態,然後選擇步驟詳細資訊窗格上的個別索引標籤,分別檢視每個狀態的詳細資訊,包括輸入、輸出和定義。如需您可以在執行詳細資訊頁面上檢視之執行資訊的詳細資訊,請參閱執行詳細資訊概觀。
-
編輯您的工作流程
您可以在 Workflow Studio 設計模式的 中以視覺化方式編輯現有的工作流程。
在 Step Functions 主控台
您也可以在 中編輯工作流程定義程式碼模式。選擇程式碼按鈕以檢視或編輯工作流程 Studio 中的工作流程定義。
注意
如果您在工作流程中看到錯誤,則必須在設計模式中修正錯誤。如果您的工作流程中存在任何錯誤,則無法切換到程式碼或組態模式。
當您儲存工作流程的變更時,您也可以選擇發佈新版本。使用 版本,您可以選擇執行工作流程的原始版本或替代版本。若要進一步了解如何使用 版本管理工作流程,請參閱 Step Functions 工作流程中的狀態機器版本
匯出您的工作流程
您可以匯出工作流程的 Amazon States Language(ASL) 定義和工作流程圖表:
-
在 Step Functions 主控台
中選擇您的工作流程。 -
在狀態機器詳細資訊頁面上,選擇編輯。
-
選擇動作下拉式選單按鈕,然後執行下列其中一項或兩項操作:
-
若要將工作流程圖表匯出至 SVG 或 PNG 檔案,請在匯出圖表下選取您想要的格式。
-
若要將工作流程定義匯出為 JSON 或 YAML 檔案,請在匯出定義下,選取您想要的格式。
-
使用預留位置建立工作流程原型
您可以在 中使用 Workflow Studio 或 Workflow Studio Infrastructure Composer 來建立新工作流程的原型,其中包含名為 資源且尚不存在的預留位置資源。
若要建立工作流程原型:
-
選擇 Create state machine (建立狀態機器)。
-
在選擇範本對話方塊中,選取空白。
-
選擇選取以在 中開啟工作流程 Studio設計模式。
-
Workflow Studio 的設計模式隨即開啟。在 Workflow Studio 中設計您的工作流程。若要包含預留位置資源:
-
選擇您要包含預留位置資源的狀態,然後在組態中:
-
針對 Lambda 調用狀態,選擇函數名稱,然後選擇輸入函數名稱。您也可以輸入函數的自訂名稱。
-
針對 Amazon SQS 傳送訊息狀態,選擇佇列 URL,然後選擇輸入佇列 URL。輸入預留位置佇列 URL。
-
對於 Amazon SNS 發佈狀態,請從主題中選擇一個主題 ARN。
-
對於動作下列出的所有其他狀態,您可以使用預設組態。
注意
如果您在工作流程中看到錯誤,則必須在設計模式中修正。如果您的工作流程中存在任何錯誤,則無法切換到程式碼或組態模式。
-
-
(選用) 若要檢視工作流程的自動產生 ASL 定義,請選擇定義。
-
(選用) 若要更新 Workflow Studio 中的工作流程定義,請選擇程式碼按鈕。
注意
如果您在工作流程定義中看到錯誤,則必須在程式碼模式中修正錯誤。如果您的工作流程定義中存在任何錯誤,則無法切換到設計或組態模式。
-
-
(選用) 若要編輯狀態機器名稱,請選擇 MyStateMachine 預設狀態機器名稱旁的編輯圖示,然後在狀態機器名稱方塊中指定名稱。
您也可以切換到 組態模式來編輯預設狀態機器名稱。
-
指定您的工作流程設定,例如狀態機器類型及其執行角色。
-
選擇 Create (建立)。
您現在已使用可用於原型的預留位置資源建立新的工作流程。您可以匯出工作流程定義和工作流程圖表。
-
若要將您的工作流程定義匯出為 JSON 或 YAML 檔案,請在設計或程式碼模式中,選擇動作下拉式選單按鈕。然後,在匯出定義下,選取您要匯出的格式。您可以使用此匯出定義做為 本機開發的起點AWS Toolkit for Visual Studio Code。
-
若要將工作流程圖表匯出至 SVG 或 PNG 檔案,請在設計或程式碼模式中,選擇動作下拉式清單按鈕。然後,在匯出定義下,選取您想要的格式。