介面概觀 - AWS Step Functions

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

介面概觀

Workflow Studio for AWS Step Functions 是低程式碼的視覺化工作流程設計工具,可讓您透過協調建立無伺服器工作流程。 AWS services借助其拖放功能,Workflow Studio 使您可以輕鬆構建,編輯和可視化工作流程原型。工作流程 Studio 還提供了一個內置的代碼編輯器,用於編寫和編輯使用Amazon States Language(ASL)Step Functions 控制台中的工作流定義。

為了幫助您構建和視覺化您的工作流程,編輯它們的定義,並管理它們的 Config,Workflow Studio 提供了三種模式:設計代碼和配置。以下各節將詳細說明這些模式。

設計模式

工作流程 Studio 的設計模式提供了一個圖形化界面,以便在您構建其原型時視覺化您的工作流程。以下影像展示了「設計」模式中可用的不同元件。

工作流程工作室的設計模式。此模式包含各種組件,例如左側的「狀態」瀏覽器、中間的畫布、畫布右側的「Inspector 器」面板,以及最右側窗格中的內容說明。此影像顯示「Inspector」面板中 Lambda 函數的組態選項。
  1. 模式按鈕 — 使用模式按鈕在工作流 Studio 的 [設計]、[程式] 和 [設 Config] 模式之間切換。如果工作流程的 ASL 定義中的 JSON 無效,則無法切換模式。

  2. 狀態瀏覽器包含下列三個索引標籤:

    • [動] 索引標籤提供 AWS API 清單,您可以將這些 API 拖放到畫布中的工作流程圖形中。每個動作代表一個任務狀態狀態。

    • 程」索引標籤提供流程狀態清單,您可以將其拖放到畫布中的工作流程圖表中。

    • [模式] 索引標籤提供數個可重複使用的建置區塊 ready-to-use,可用於各種使用案例。例如,您可以使用這些模式在 Amazon S3 儲存貯體中反覆處理資料。

  3. 您可以將狀態拖放到工作流程圖表中、變更狀態順序,以及選取要設定或檢視的狀態。Canvas

  4. 您可以在此Inspector面板中檢視和編輯您在畫布上選取的任何狀態的屬性。開啟定切換以檢視工作流程的 Amazon 州語言代碼,並反白顯示目前選取的狀態。

  5. 當您需要協助時,資訊連結會開啟包含內容資訊的面板。這些面板也包括 Step Functions 文件中相關主題的連結。

  6. 設計工具列 — 包含一組用於執行常用動作的按鈕,例如復原、刪除和放大。

  7. 公用程式按鈕 — 一組用來執行工作的按鈕,例如儲存工作流程或將其 ASL 定義匯出至 JSON 或 YAML 檔案。

狀態瀏覽器

您可以在「狀態」瀏覽器中選取要拖放到工作流程圖表中的狀態。「動作」索引標籤提供 AWS API 清單,而「程」索引標籤則提供流程狀態清單。雖然「模式」索引標籤提供了數個可重複使用的建置區塊 ready-to-use,可用於各種使用案例。您可以使用頂端的「搜尋」方塊,在「狀態瀏覽器」中搜尋所有狀態。

Step Functions 工作流程 Studio 狀態瀏覽器界面組件。此影像顯示了「狀態」瀏覽器中可用的三個標籤:「動作」、「流程」和「模式」。

您可以使用七種流程狀態來引導和控制工作流程。所有這些都取自先前狀態的輸入,許多可讓您篩選前一個狀態的輸入,並將輸出篩選為後續狀態。流量狀態為:

  • Choice:將執行分支之間的選擇添加到您的工作流程。在「Inspector」的「組態」索引標籤中,您可以設定規則以決定工作流程將轉換至哪個狀態。

  • 平行:將執行的 parallel 分支新增至您的工作流程。

  • Map:動態迭代輸入數組的每個元素的步驟。與Parallel流動狀態不同,Map狀態會針對狀態輸入中陣列的多個項目執行相同的步驟。

  • Pass:可讓您將其輸入傳遞至輸出。(可選)您可以將固定數據添加到輸出中。

  • 等候:讓您的工作流程暫停一段時間,或直到指定的時間或日期。

  • Succeed:成功停止您的工作流程。

  • Fail:停止失敗的工作流程。

Canvas

選擇要新增至工作流程的狀態後,請將其拖曳至畫布,然後放入工作流程圖表中。您也可以拖放狀態,將狀態移至工作流程中的不同位置。如果您的工作流程很複雜,您可能無法在畫布面板中檢視所有工作流程。使用畫布頂端的控制項來放大或縮小。若要檢視工作流程圖形的不同部分,您可以在畫布中拖曳工作流程圖表。

將工作流程狀態從「動」或「程」標籤拖放到工作流程中。有一條線會顯示它將放置在工作流程中的位置。新的工作流程狀態已新增至您的工作流程,其程式碼會自動產生。

工作流程工作室

若要變更狀態的順序,您可以將其拖曳至工作流程中的其他位置。

工作流工作室拖放

Inspector

您可以設定新增至工作流程的任何狀態。選擇您要配置的狀態,您將在 Inspector 面板中看到其配置選項。若要查看工作流程程式碼自動產生的 ASL 定義,請開啟定切換。與您選取的狀態相關聯的 ASL 定義將會反白顯示。

工作流 Studio 檢查器配置面板
工作流程 Studio 檢查程式定義

程式碼模式

Workflow Studio 的程式模式提供整合的程式碼編輯器,可在 Step Functions 主控台中檢視、撰寫及編輯工作流程的 Amazon States Language (ASL) 定義。下列影像顯示「程式」模式中可用的不同元件。

Step Functions 工作流程 Studio 代碼模式。此模式顯示工作流程定義的範例,以及根據定義即時呈現工作流程圖形。
  1. 模式按鈕 — 使用模式按鈕在工作流 Studio 的 [設計]、[程式] 和 [設 Config] 模式之間切換。如果工作流程的 ASL 定義中的 JSON 無效,則無法切換模式。

  2. 您可以程式碼編輯器在工作流程 Studio 中撰寫和編輯工作流程的 ASL 定義。程式碼編輯器也提供了一些功能,例如語法醒目提示和自動完成功能。

  3. 圖形視覺化窗格— 顯示工作流程的實時圖形可視化。

  4. 公用程式按鈕 — 一組用來執行工作的按鈕,例如儲存工作流程或將其 ASL 定義匯出至 JSON 或 YAML 檔案。

  5. 程式碼工具列 — 包含一組用來執行常用動作的按鈕,例如復原動作或格式化程式碼。

  6. 圖形工具列 — 包含一組用於執行常用動作的按鈕,例如放大和縮小工作流程圖形。

程式碼編輯器

程式碼編輯器提供類似 IDE 的體驗,可在工作流程 Studio 中使用 JSON 撰寫和編輯工作流程定義。程式碼編輯器包含數個功能,例如語法醒目提示、自動完成建議、ASL 定義驗證,以及內容感應式說明顯示。當您更新工作流程定義時,會圖形視覺化窗格呈現工作流程的即時圖表。您也可以在中看到更新的工作流程圖形設計模式

如果您在設計模式或圖形視覺化窗格中選取狀態,該狀態的 ASL 定義會在程式碼編輯器中反白顯示。如果您在「計」模式或圖形視覺化窗格中重新排序、刪除或新增狀態,工作流程的 ASL 定義會自動更新。

Step Functions 工作流程 Studio 組件

將游標置於工作流程定義中的任何欄位上,以檢視其上下文相關說明作為工具提示。

Step Functions 工作流工作

自動完成建議會顯示您可以包含在工作流程中的欄位或狀態的程式碼片段。若要查看可包含在特定狀態中的欄位清單,請按Ctrl+Space。若要為工作流程中的新狀態產生程式碼片段,請在目前狀態的定義Ctrl+Space之後按下。您也可以按下F1以顯示可用指令的清單。

Step Functions 工作流程 Studio 組件

圖形視覺化窗格

圖形視覺效果可讓您以圖形格式查看工作流程的外觀。當您在 Workflow Studio 中撰寫工作流程定義時,圖形視覺化窗格會呈現工作流程的即時圖形。程式碼編輯器當您在圖形視覺化窗格中重新排序、刪除或複製狀態時,程式碼編輯器中的工作流程定義會自動更新。同樣地,當您在程式碼編輯器中更新工作流程定義、重新排序、刪除或新增狀態時,視覺效果也會自動更新。

如果工作流程 ASL 定義中的 JSON 無效,圖形視覺化窗格會暫停轉譯,並在窗格底部顯示狀態訊息。

Config 模式

工作流程 Studio 的 Config 模式可讓您管理狀態機器的配置。在此模式中,您可以為狀態機器指定詳細資料,例如狀態機器名稱及其類型、IAM 許可和狀態機器的記錄組態。您可以在此模式中指定的其他其他組態包括在建立狀態機器時啟用 AWS X-Ray 追蹤和發佈版本。建立狀態機之後,您可以編輯狀態機器名稱和類型以外的所有狀態機組態選項。下圖顯示了您可以在「組態」模式中指定的一些組 Config

管理狀態機組態

若要管理您的狀態機組態,請執行下列動作:

  1. 在狀態機器名稱方塊中輸入狀態機的名稱

    提示

    或者,選擇的預設狀態機器名稱旁邊的編輯圖示MyStateMachine。然後,在 [狀態機器組態] 下,指定名稱。

    重要

    建立狀態機器之後,您無法編輯狀態機器名稱。

  2. 類型中,選擇標準快速的狀態機器類型。如需狀態機器類型的相關資訊,請參閱標準與快速工作流程

    重要

    建立狀態機器之後,您無法編輯狀態機器類型。

  3. 可中,選取要用作狀態機器執行角色的 IAM 角色。

    • 建立新角色 (建議使用):如果選取此選項,Step Functions 會以建立狀態機器時所需的最低權限,自動為狀態機器建立執行角色。這些自動產生的 IAM 角色對於您 AWS 區域 在其中建立狀態機器有效。

      提示

      若要檢閱 Step Functions 將為狀態機器自動產生的權限,請選擇 [檢閱自動產生的權限]。

      注意

      如果您刪除 Step Functions 建立的 IAM 角色,則 Step Functions 稍後無法重新建立。同樣地,如果您修改角色 (例如,透過從 IAM 政策中的主體移除 Step Functions),Step Functions 稍後無法還原其原始設定。

    • 選擇現有角色:為狀態機器建立您自己的 IAM 角色,然後從下面列出的選項中選擇「選擇現有角色」。確保角色的策略包含您希望狀態機器承擔的權限。

      如需有關建立和編輯 IAM 政策的資訊,請參閱《IAM 使用者指南》中的建立 IAM 政策

    • 輸入角色 ARN:指定要用於此狀態機器的現有 IAM 角色的 Amazon 資源名稱 (ARN)。例如 arn:aws:iam::123456789012:role/service-role/StepFunctions-WorkflowStudio-role-777f4027

  4. 記錄中,設定狀態機器的記錄層級。Step Functions 會根據您的選擇記錄執行歷史記錄事件。您可以選擇以下其中一個選項:

    • ALL:會記錄所有事件類型。

    • 錯誤:會記錄所有錯誤事件類型,例如 TaskFailed 和 ExecutionFailed。

    • 致命:記錄所有嚴重錯誤事件類型,例如 ExecutionAborted 和 ExecutionFailed。

    • OFF:不會記錄任何事件類型。

    如需記錄層級的詳細資訊,請參閱日誌層級

  5. 其他組態中,設定下列一或多個選用組態:

    • 啟用X-Ray追蹤:針對狀態機器執行傳送追蹤的 Step Functions 選擇此核取方塊,即使追蹤 ID 未由上游服務傳送追蹤。X-Ray如需詳細資訊,請參閱 AWS X-Ray 和 Step Functions

    • 建立時發佈版本:版本是您可以執行的狀態機器的編號、不可變快照集。選擇此核取方塊可在建立狀態機時發佈狀態機的版本。Step Functions 發布版本 1 作為狀態機的第一個修訂版。

      如需有關版本的詳細資訊,請參閱狀態機版本

    • 新增標籤:選擇此方塊可將標籤新增至狀態機。新增標籤可協助您追蹤和管理與資源相關的成本,並在 IAM 政策中提供更好的安全性。如需標籤的詳細資訊,請參閱步驟函數中的標記

  6. 選擇建立

  7. 在 [確認角色建立] 對話方塊中,選擇 [確認] 以繼續。

    您也可以選擇 [檢視角色組態] 回到 [設定] 模式。

鍵盤快速鍵

工作流程工作室支援下列鍵盤快速鍵:

鍵盤快速鍵 函式
Shortcuts for the Code mode
Ctrl+space Auto-complete suggestions
F1 Display a list of available commands
Common shortcuts for the Design and Code modes
Ctrl+Z Undo the last operation
Ctrl+Shift+Z Redo the last operation
Alt+C Center the workflow in the canvas
Backspace Remove all selected states
Delete Remove all selected states
Ctrl+D Duplicate selected state