將狀態機器執行與版本或別名相關聯 - AWS Step Functions

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

將狀態機器執行與版本或別名相關聯

Step Functions 會根據您用來叫用 StartExecutionAPI 動作的 Amazon 資源名稱 (ARN),將執行與版本或別名相關聯。Step Functions 在執行開始時執行此操作。

您可以使用限定或不合格的 ARN 啟動狀態機執行。

  • 合格 ARN — 指以版本號或別名後綴的狀態機器 ARN。

    下列合格 ARN 範例是指名為3myStateMachine的狀態機器版本。

    arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:3

    下列合格 ARN 範例是指名為PROD的狀態機器名為的別名myStateMachine

    arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:PROD
  • 不合格 ARN — 指沒有版本號或別名後綴的狀態機器 ARN。

    arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine

例如,如果您的合格 ARN 引用版本3,則 Step Functions 將執行與此版本相關聯。它不會將執行與任何指向版本的別名相關聯3

如果您的合格 ARN 引用別名,則 Step Functions 將執行與該別名和別名指向的版本相關聯。一個執行只能與一個別名相關聯。

注意

如果您使用不合格的 ARN 開始執行,即使版本使用相同的狀態機器,Step Functions 也不會將該執行與版本相關聯。revision例如,如果版本 3 使用最新的修訂版,但您以不合格的 ARN 開始執行,則 Step Functions 不會將該執行與版本 3 產生關聯。

檢視以版本或別名開始的執行項目

Step Functions 提供了以下方法,您可以在其中查看以版本或別名開始的執行:

您可以叫用DescribeExecutionListExecutionsAPI 動作來檢視與版本或別名相關聯的所有執行。這些 API 動作會傳回用來啟動執行之版本或別名的 ARN。這些動作也會傳回其他詳細資訊,包括執行的狀態和 ARN。

您也可以提供狀態機器別名 ARN 或版本 ARN,以列出與特定別名或版本相關聯的執行。

下列 ListExecutionsAPI 動作的範例回應會顯示用來啟動名為myFirstExecution的狀態機器執行之別名的 ARN。

下列程式碼片段中的斜體文字代表資源特定的資訊。

{ "executions": [ { "executionArn": "arn:aws:states:us-east-1:123456789012:execution:myStateMachine:myFirstExecution", "stateMachineArn": "arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine", "stateMachineAliasArn": "arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:PROD", "name": "myFirstExecution", "status": "SUCCEEDED", "startDate": "2023-04-20T23:07:09.477000+00:00", "stopDate": "2023-04-20T23:07:09.732000+00:00" } ] }

您也可以從 Step Functions 主控台檢視由版本或別名啟動的執行。下列程序顯示如何檢視以特定版本開始的執行項目:

  1. 開啟 Step Functions 主控台,然後選擇您已針對其發佈版本或建立別名的現有狀態機器。此範例顯示如何檢視以特定狀態機器版本開始的執行。

  2. 選擇 [版本] 索引標籤,然後從 [版] 清單中選擇版本。

    提示

    依內容或值方塊篩選,以搜尋特定版本。

  3. 在 [版本詳細資料] 頁面上,您可以看到以所選版本開始的所有進行中和過去狀態機器執行的清單。

下圖顯示 [版本詳細資料] 主控台頁面。此頁面列出了名為MathAddDemo的狀態機器的第 4 版啟動的執行。此清單也會顯示由名稱為的別名啟動的執行項目PROD。此別名將執行流量路由至第 4 版。


                    [版本詳細資料] 主控台頁面會顯示由第 4 版開始的三個執行項目的清單。其中兩個執行是由版本 4 開始的。第三個執行是由名為的別名開始的PROD。此別名將執行流量路由至第 4 版。

對於您以 a 開始的每個狀態機器執行Qualified ARN,Step Functions 會發出與目前發出的指標相同名稱和值的其他度量。這些其他量度包含您開始執行時所使用的每個版本識別碼和別名名稱的維度。使用這些指標,您可以在版本層級監視狀態機器執行,並判斷何時可能需要復原案例。您也可以根據這些指標建立 Amazon CloudWatch 警示

Step Functions 會針對您以別名或版本開始的執行發出下列量度:

  • ExecutionTime

  • ExecutionsAborted

  • ExecutionsFailed

  • ExecutionsStarted

  • ExecutionsSucceeded

  • ExecutionsTimedOut

如果您使用 ARN 版本開始執行,則「Step Functions」會發佈具有StateMachineArn和維度的第二個StateMachineArnVersion度。

如果您使用別名 ARN 開始執行,Step Functions 會發出下列指標:

  • 不合格 ARN 和版本的兩個指標。

  • 具有StateMachineArn和維度的量Alias度。