本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用 Step Functions 數中的工作流程 Studio 建立工作流程
了解如何使用 Step Functions 工作流程 Studio 建立、編輯和執行工作流程。工作流程準備就緒後,您可以儲存、執行和匯出它。
建立狀態機器
在工作流程 Studio 中,您可以選擇初學者範本或空白範本來建立工作流程。
入門範本是一個 ready-to-run 範例專案,可自動建立工作流程原型和定義,並部署所有相關的項目 AWS 您的項目所需的資源 AWS 帳戶。 您可以使用這些初學者範本依原樣部署和執行它們,或使用工作流程原型來建置它們。如需有關初學者範本的更多資訊,請參閱使用 Step Functions 的入門範本部署狀態機。
如果使用空白範本,您可以使用「設計」或「程式碼」模式建立自訂工作流程。
使用起始範本建立狀態機
-
開啟 Step Functions 主控台
,然後選擇建立狀態機器。 -
在「選擇樣板」對話方塊中,執行下列任一項作業以選擇範例專案:
-
Task Timer
在 [依關鍵字搜尋] 方塊中輸入,然後從搜尋結果中選擇 [工作計時器]。 -
瀏覽右窗格中「全部」下列出的範例專案,然後選擇「工作計時器」。
-
-
選擇 Next (下一步) 繼續。
-
選擇 [執行示範] 以建立唯讀和 ready-to-deploy 工作流程,或選擇 [在其上建置] 建立可編輯的狀態機定義,您可以在其上建置並稍後進行部署。
-
選擇「使用範本」繼續進行選取。
接下來的步驟取決於您之前的選擇:
-
執行示範 — 您可以先檢閱狀態機器,然後再建立唯讀專案,其中包含部署的資源 AWS CloudFormation 到您的 AWS 帳戶.
您可以檢視狀態機器定義,當您準備就緒時,請選擇 [部署並執行] 以部署專案並建立資源。
部署最多可能需要 10 分鐘的時間來建立資源和權限。您可以使用「堆疊 ID」連結來監控進度 AWS CloudFormation.
部署完成後,您應該會在控制台中看到新的狀態機器。
-
建立在其上 — 您可以檢閱和編輯工作流程定義。您可能需要在範例專案中設定預留位置的值,然後才能嘗試執行自訂工作流程。
注意
部署到您帳戶的服務可能需要支付標準費用。
使用空白範本建立工作流程
當您要從乾淨的畫布開始時,請從空白範本建立工作流程。
設計工作流程
當您知道要新增的狀態名稱時,請使用頂端的搜尋方塊狀態瀏覽器來尋找它。否則,請在瀏覽器中查找所需的狀態並將其添加到畫布上。
您可以將工作流程中的狀態拖曳至工作流程中的其他位置來重新排序狀態。當您將狀態拖曳到畫布上時,會出現一條線,顯示狀態將插入工作流程的位置,如下列螢幕擷取畫面所示:
將狀態拖放到畫布上之後,其程式碼會自動產生並新增到工作流程定義中。若要查看定義,請開啟「檢查 Inspector」面板上的「定義」切換開關。您可以選擇程式碼模式使用內建程式碼編輯器來編輯定義。
將狀態拖放到畫布上後,您可以在右側的Inspector 面板面板中對其進行配置。此面板包含您放置在畫布上的每個狀態或API動作的「組態」、「輸入」、「輸出」和「錯誤處理」索引標籤。您可以在「組態」索引標籤中配置包含在工作流程中的狀態。
例如,Lambda 叫用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 帳戶 您進行跨帳戶通話的對象。
-
ARN在執行階段從狀態輸入取得IAM角色:在包含IAM角色的狀態JSON輸入中指定現有索引鍵值組的參考路徑。
-
-
「下一個狀態」可讓您選取要轉換到下一個狀態的狀態。
-
(可選)「注釋」字段不會影響工作流程,但您可以使用它來註釋您的工作流程。
某些狀態會有額外的一般組態選項。例如,Amazon 狀ECSRunTask
態組態包含填入預留位置值的API Parameters
欄位。對於這些狀態,您可以使用適合您需求的組態來取代預留位置值。
若要刪除狀態
您可以按退格鍵,按一下滑鼠右鍵並選擇「刪除」狀態,或選擇「設計」工具列上的「刪除」
執行工作流程
當您的工作流程準備就緒時,您可以執行工作流程,並從 Step Functions 主控台
若要在工作流程 Studio 中執行工作流程
-
在「設計」、「程式碼」或「Config」模式中,選擇「執行」。
開始執行對話方塊會在新索引標籤中開啟。
-
在 [開始執行] 對話方塊中,執行下列動作:
-
(選擇性) 輸入自訂執行名稱,以覆寫產生的預設值。
非ASCII名稱和記錄
Step Functions 接受包含非ASCII字元的狀態機器、執行項目、活動和標籤的名稱。由於此類字元不適用於 Amazon CloudWatch,因此我們建議您僅使用ASCII字元,以便在中追蹤指標 CloudWatch。
-
(選擇性) 在「輸入」方塊中,以JSON格式輸入輸入值以執行工作流程。
-
選擇 Start execution (開始執行)。
-
Step Functions 主控台會將您導向至標題為執行 ID 的頁面。此頁面稱為「執行詳細資訊」頁面。在此頁面上,您可以在執行進行時或完成之後複查執行結果。
若要複查執行結果,請在「圖形」檢視中選擇個別狀態,然後選擇步驟詳情窗格上的個別索引標籤,分別檢視每個狀態的詳細資訊,包括輸入、輸出和定義。如需有關可在「執行詳細資訊」頁面檢視之執行資訊的詳細資訊,請參閱執行細節概述。
-
編輯工作流程
您可以在工作流程 Studio 中以視覺方式編輯現有設計模式的工作流程。
在 Step Functions 主控台
您也可以在中編輯工作流程定義程式碼模式。選擇 [程式碼] 按鈕,以檢視或編輯工作流程 Studio 中的工作流程定義。
注意
如果您在工作流程中看到錯誤,則必須在「設計」模式中修正錯誤。如果工作流程中存在任何錯誤,則無法切換到「代碼」或「Config」模式。
匯出工作流程
您可以匯出工作流程的 Amazon States Language (ASL) 定義和工作流程圖表:
-
在 Step Functions 主控台
中選擇您的工作流程。 -
在狀態機器詳細資料頁面上,選擇編輯。
-
選擇「作業」 下拉式按鈕,然後執行下列其中一項或兩項作業:
-
若要將工作流程圖形匯出至SVG或PNG檔案,請在「匯出圖表」下選取您要的格式。
-
若要將工作流程定義匯出為JSON或YAML檔案,請在「匯出定義」下選取所需的格式。
-
使用預留位置建立工作流程原型
您可以在中使用工作流程工作室或工作流程 Application Composer創建包含佔位符資源的新工作流程的原型,這些預留位置資源是尚未存在的命名資源。
若要建立工作流程原型:
-
選擇 Create state machine (建立狀態機器)。
-
在「選擇範本」對話方塊中,選取「空白」。
-
選擇選取以在中開啟工作流程工作室設計模式。
-
工作流程工作室的設計模式隨即開啟。在工作流程工作室設計工作流程。若要包含預留位置資源:
-
選擇要包含預留位置資源的狀態,然後在「配置」中選擇:
-
對於 Lambda 叫用狀態,請選擇函數名稱,然後選擇輸入函數名稱。您也可以輸入函數的自訂名稱。
-
對於 Amazon SQS 傳送訊息狀態,請選擇佇列 URL,然後選擇輸入佇列URL。輸入預留位置佇列URL。
-
對於 Amazon SNS 發佈狀態,請從主題中選擇一個主題ARN。
-
對於「動作」 下列出的所有其他狀態,您可以使用預設組態。
注意
如果您在工作流程中看到錯誤,則必須在「設計」模式中修正錯誤。如果工作流程中存在任何錯誤,則無法切換到「代碼」或「Config」模式。
-
-
(選擇性) 若要檢視自動產生的工作流程ASL定義,請選擇「定義」。
-
(選擇性) 若要更新工作流程 Studio 中的工作流程定義,請選擇 [程式碼] 按鈕。
注意
如果您在工作流程定義中看到錯誤,則必須在「程式碼」模式中修正錯誤。如果工作流程定義中存在任何錯誤,則無法切換到「設計」或「Config 態」模式。
-
-
(選擇性) 若要編輯狀態機器名稱,請選擇的預設狀態機器名稱旁邊的編輯圖示,MyStateMachine然後在 [狀態機器名稱] 方塊中指定名稱。
您也可以切換Config 模式至以編輯預設狀態機器名稱。
-
指定您的工作流程設定,例如狀態機器類型及其執行角色。
-
選擇 Create (建立)。
您現在已建立新的工作流程,其中包含可用於製作原型的預留位置資源。您可以匯出工作流程定義和工作流程圖表。
-
若要將工作流程定義匯出為JSON或YAML檔案,請在 [設計] 或 [程式碼] 模式下,選擇 [動作] 下拉式按鈕。然後,在「匯出定義」下,選取您要匯出的格式。您可以使用此匯出的定義做為本機開發的起點 AWS Toolkit for Visual Studio Code.
-
若要將工作流程圖形匯出至SVG或PNG檔案,請在「設計」或「程式碼」模式下,選擇「動作」 下拉式按鈕。然後,在「匯出定義」下,選取所需的格式。