翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
EventBridge Step Functions 実行ステータス変更の (CloudWatch イベント)
Amazon EventBridge は、 AWS リソースの状態の変化に応答できる AWS のサービスです。例えば、次の 2 つの方法 EventBridge を使用して、Step Functions 標準ワークフローの実行ステータスの変更に で応答できます。
-
Step Functions ステートマシンの実行ステータスが変更されたときに発生するイベントに対応するように EventBridge ルールを設定できます。これにより、DescribeExecution API を使用して継続的にポーリングすることなく、ワークフローをモニタリングできます。ステートマシンの実行の変更に基づいて、 EventBridge ターゲットを使用して、新しいステートマシンの実行の開始、 AWS Lambda 関数の呼び出し、Amazon Simple Notification Service (Amazon SNS) トピックへのメッセージの発行などを行うことができます。
-
Step Functions ステートマシンを のターゲットとして設定することもできます EventBridge。これにより、他の AWS のサービスからのイベントに応答して、Step Functions ワークフローの実行をトリガーできます。
詳細については、「Amazon ユーザーガイド EventBridge 」を参照してください。
ただし、Express ワークフローは にイベントを発行しません EventBridge。Express ワークフローの実行をモニタリングするには、 CloudWatch ログを使用できます。これを行うには、ステートマシンの [実行の詳細] ページで [モニタリング] タブと [ロギング] タブを選択します。モニタリングタブでは、実行期間、実行エラー、請求済みメモリ などのイベントの CloudWatch メトリクスを表示できます。[ログ記録] タブでは、最近のログとログ記録設定を確認できます。
ヒント
Express ワークフローの例を にデプロイ AWS アカウント し、Express ワークフローをモニタリングする方法については、 AWS Step Functions ワークショップの「Monitoring Express Workflows
EventBridge ペイロード
EventBridge イベントの定義には入力プロパティを含めることができます。一部のイベントでは EventBridge、イベントの定義に出力プロパティを含めることもできます。
-
に送信されたエスケープされた入力とエスケープされた出力の合計が 248KB EventBridge を超える場合、入力は除外されます。同様に、エスケープされた出力が 248 KB を超える場合、出力は除外されます。これはイベントクォータの結果です EventBridge。
-
inputDetails
とoutputDetails
プロパティでペイロードが切り捨てられているかどうかを判断できます。詳細については、CloudWatchEventsExecutionDataDetails
データを参照してください。 -
標準ワークフローでは、 を使用して完全な入出力を確認できますDescribeExecution。
-
DescribeExecution
は、Express ワークフローでは使用できません。完全な入出力を表示したい場合は、Express ワークフローを標準ワークフローでラップできます。もう 1 つの方法は、Amazon S3 の ARN を使用することです。ARN 使用の詳細については、ラージペイロードを渡す代わりに Amazon S3 ARNs を使用する を参照してください。
Step Functions イベントの例
Step Functions が にイベントを送信する例を次に示します EventBridge。
いずれの場合も、イベントデータの detail
セクションに、DescribeExecution
API と同じ情報が含まれています。status
フィールドは、イベント送信時の実行ステータス (放出されたイベントに応じてRUNNING
、SUCCEEDED
、FAILED
、TIMED_OUT
、ABORTED
のいずれか) を示します。
実行のスタート
{ "version": "0", "id": "315c1398-40ff-a850-213b-158f73e60175", "detail-type": "Step Functions Execution Status Change", "source": "aws.states", "account": "123456789012", "time": "2019-02-26T19:42:21Z", "region": "us-east-2", "resources": [ "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name" ], "detail": { "executionArn": "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name", "stateMachineArn": "arn:aws::states:us-east-2:123456789012:stateMachine:state-machine", "name": "execution-name", "status": "RUNNING", "startDate": 1551225271984, "stopDate": null, "input": "{}", "inputDetails": { "included": true }, "output": null, "outputDetails": null } }
実行の成功
{ "version": "0", "id": "315c1398-40ff-a850-213b-158f73e60175", "detail-type": "Step Functions Execution Status Change", "source": "aws.states", "account": "123456789012", "time": "2019-02-26T19:42:21Z", "region": "us-east-2", "resources": [ "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name" ], "detail": { "executionArn": "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name", "stateMachineArn": "arn:aws:states:us-east-2:123456789012:stateMachine:state-machine", "name": "execution-name", "status": "SUCCEEDED", "startDate": 1547148840101, "stopDate": 1547148840122, "input": "{}", "inputDetails": { "included": true }, "output": "\"Hello World!\"", "outputDetails": { "included": true } } }
実行の失敗
{ "version": "0", "id": "315c1398-40ff-a850-213b-158f73e60175", "detail-type": "Step Functions Execution Status Change", "source": "aws.states", "account": "123456789012", "time": "2019-02-26T19:42:21Z", "region": "us-east-2", "resources": [ "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name" ], "detail": { "executionArn": "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name", "stateMachineArn": "arn:aws:states:us-east-2:123456789012:stateMachine:state-machine", "name": "execution-name", "status": "FAILED", "startDate": 1551225146847, "stopDate": 1551225151881, "input": "{}", "inputDetails": { "included": true }, "output": null, "outputDetails": null } }
実行のタイムアウト
{ "version": "0", "id": "315c1398-40ff-a850-213b-158f73e60175", "detail-type": "Step Functions Execution Status Change", "source": "aws.states", "account": "123456789012", "time": "2019-02-26T19:42:21Z", "region": "us-east-2", "resources": [ "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name" ], "detail": { "executionArn": "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name", "stateMachineArn": "arn:aws:states:us-east-2:123456789012:stateMachine:state-machine", "name": "execution-name", "status": "TIMED_OUT", "startDate": 1551224926156, "stopDate": 1551224927157, "input": "{}", "inputDetails": { "included": true }, "output": null, "outputDetails": null } }
実行の中断
{ "version": "0", "id": "315c1398-40ff-a850-213b-158f73e60175", "detail-type": "Step Functions Execution Status Change", "source": "aws.states", "account": "123456789012", "time": "2019-02-26T19:42:21Z", "region": "us-east-2", "resources": [ "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name" ], "detail": { "executionArn": "arn:aws:states:us-east-2:123456789012:execution:state-machine-name:execution-name", "stateMachineArn": "arn:aws:states:us-east-2:123456789012:stateMachine:state-machine", "name": "execution-name", "status": "ABORTED", "startDate": 1551225014968, "stopDate": 1551225017576, "input": "{}", "inputDetails": { "included": true }, "output": null, "outputDetails": null } }
EventBridge コンソール EventBridge で Step Functions イベントを にルーティングする
以下の手順に従って、特定の Step Functions ステートマシンが正常に実行を完了したときに Step Functions ステートマシンの実行をトリガーする方法を学習してください。Amazon EventBridge コンソールを使用して、実行をトリガーするステートマシンを指定します。
-
ステートマシンの詳細 ページで、アクション を選択し、作成 EventBridge (CloudWatch イベント) ルール を選択します。
または、https://console.aws.amazon.com/events/
で EventBridge コンソールを開きます。ナビゲーションペインの [バス] で、[ルール] を選択します。 -
[ルールの作成] を選択します。これにより、[ルールの詳細を定義] ページが開きます。
-
ルールの [名前] (例:
) を入力し、(オプション) ルールの [説明] を入力します。StepFunctionsEventRule
-
[イベントバス] と [ルールタイプ] は、デフォルト設定のままにします。
-
[次へ] を選択します。これにより、[イベントパターンを構築] ページが開きます。
-
イベントソース で、AWS イベントまたは EventBridge パートナーイベントのデフォルト選択を維持します。
-
[サンプルイベント] セクションと [作成方法] セクションはデフォルトのままにします。
-
[イベントパターン] で、次のいずれかを実行します。
-
[イベントソース] ドロップダウンリストでは、AWS のサービスのデフォルトの選択のままにします。
-
[AWS のサービス] の場合、リストから [Step Functions] を選択します。
-
[イベントタイプ] ドロップダウンリストから、[Step Functions の実行ステータスの変更] を選択します。
-
(オプション) 特定のステータス、ステートマシンの Amazon リソースネーム (ARN)、または実行 ARN を設定します。この手順では、[特定のステータス] を選択し、ドロップダウンリストから[SUCCEEDED] を選択します。
-
-
[次へ] を選択します。これにより、[ターゲットを選択] ページが開きます。
-
[ターゲットタイプ] では、デフォルトの [AWS のサービス] を選択したままにします。
-
ターゲットを選択ドロップダウンリストから、 AWS サービスを選択します。例えば、Lambda 関数を起動、または Step Functions ステートマシンを実行できます。この手順では、[Step Functions ステートマシン] を選択します。
-
[ステートマシン] ドロップダウンリストから、ステートマシンを選択します。
-
[実行ロール] では、デフォルトの [この特定のリソースに対して新しいロールを作成する] のままにします。
-
[次へ] を選択します。これにより、[タグを設定] ページが開きます。
-
[次へ] をもう一度選択します。これにより、[レビューして作成] ページが開きます。
-
ルールの詳細を確認し、ルールの作成 を選択します。
ルールが作成され、ルールページが表示され、すべての Amazon EventBridge ルールが一覧表示されます。