本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
儲存並執行 Step Functions 工作流程
現在您已經設定了原型中的所有資源,您可以儲存狀態機器並執行工作流程,也稱為工作流程執行。
步驟 1:查看自動生成的狀態機定義並保存狀態機
當您將狀態從「流程」索引標籤拖放到工作流程 Studio 中的畫布上以建立工作流程原型時,「Step Functions」會自動即時撰寫工作流程的 使用 Amazon 州語言定義 Step Functions 工作流程 (ASL) 定義。您可以視需要在中編輯此定義程式碼編輯器。
檢閱定ASL義並儲存狀態機的步驟
-
(選擇性) 選擇上的「定義」Inspector 面板 以檢視狀態機的 Amazon States Language (ASL) 定義,該定義會根據您在「動作」和「流程」標籤以及「Inspector 查程式」面板中的選擇自動產生。
提示
若要編輯定義,您可以選擇頁面頂端的「程式碼」來開啟程式碼編輯器。現在,繼續使用自動產生的定義。
-
指定狀態機的名稱。若要執行此操作,請選擇的預設狀態機器名稱旁邊的編輯圖示MyStateMachine。然後,在 [狀態機器組態] 中,在 [狀態機器名稱] 方塊中指定名稱。
輸入名稱
CreditCardWorkflow
。 -
(選擇性) 在狀態機器組態中,指定其他工作流程設定,例如狀態機器類型及其執行角色。
現在,保留狀態機器設置中的所有默認選擇。
注意
(選擇性) Step Functions 會自動為狀態機器建立執行角色,具有叫用
RandomNumberforCredit
Lambda 函數並發佈至 Amazon SNS 主題所需的最低權限。如果您先前已建立具有狀態機器正確權限的IAM角色,並想要使用它,請在 [權限] 中選取 [選擇現有角色],然後從清單中選取角色。或選取 [輸入角色],ARN然後ARN為該IAM角色提供。
-
在 [確認角色建立] 對話方塊中,選擇 [確認] 以繼續。
您也可以選擇 [檢視角色設定] 以返回 [狀態機器組態]。
注意
如果刪除 Step Functions 所建立的IAM角色,則 Step Functions 稍後無法重新建立。同樣地,如果您修改角色 (例如,從原則中的主參與者中移除 Step Functions),IAM則 Step Functions 稍後無法還原其原始設定。
步驟 2:新增其餘IAM政策
由於 Step Functions 不會自動產生叫用Parallel
狀態中使用的 Lambda 函數的許可,因此您需要新增必要的原則。
若要新增剩餘的策略
-
在CreditCardWorkflow頁面上,選擇狀態機器導覽至IAM主控台的IAM角色。您將為此頁面上剩餘的 Lambda 函數新增必要的權限。
-
選擇新增許可,然後選擇連接政策。
-
在搜尋方塊中輸入,
AWSLambdaRole
然後按 Enter 鍵。 -
選擇 AWSLambdaRole,然後選擇 [附加原則]。此原則現在已新增至狀態機器的執行角色。此原則可讓您叫用狀態機器中的任何 Lambda 函數。
步驟 3:運行狀態機
狀態機器執行是執行工作流程以執行工作的執行個體。
執行狀態機
-
在CreditCardWorkflow頁面上,選擇 [開始執行]。
此時會顯示「開始執行」對話方塊。
-
在 [開始執行] 對話方塊中,執行下列動作:
-
(選擇性) 輸入自訂執行名稱,以覆寫產生的預設值。
非ASCII名稱和記錄
Step Functions 接受包含非ASCII字元的狀態機器、執行項目、活動和標籤的名稱。由於此類字元不適用於 Amazon CloudWatch,因此我們建議您僅使用ASCII字元,以便在中追蹤指標 CloudWatch。
注意
您不需要提供任何輸入即可執行此狀態機器。但是,如果需要,您可以在其他狀態機器的 [開始執行] 對話方塊的 [輸入] 區域中指定執行輸入。如需如何向狀態機器提供執行輸入的範例,請參閱步驟 4:啟動 L earn 的新執行以使用AWS Step Functions 工作流工作室教程。
-
選擇 Start execution (開始執行)。
-
-
Step Functions 主控台會將您導向至標題為執行 ID 的頁面。此頁面稱為「執行詳細資訊」頁面。在此頁面上,您可以在執行進行時或完成後複查執行結果。
若要複查執行結果,請在「圖形」檢視中選擇個別狀態,然後選擇步驟詳情窗格上的個別索引標籤,分別檢視每個狀態的詳細資訊,包括輸入、輸出和定義。如需有關可在「執行詳細資訊」頁面檢視之執行資訊的詳細資訊,請參閱執行細節概述。
後續步驟
在下一個主題中配置輸入和輸出,您將學習如何篩選和操作從一個狀態傳遞到另一個狀態的資料。