Step Functions によるEventBridge の呼び出し - AWS Step Functions

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Step Functions によるEventBridge の呼び出し

Step Functions、特定の制御することができますAWS『Amazon ステートメント言語』の「」を参照してください。の使用方法の詳細については、「」を参照してください。AWS Step Functionsとの統合に関する詳細については、以下を参照してください。

最適化されたEventBridge統合とEventBridgeとの違いAWSSDK統合
  • 実行 ARN とステートマシン ARN は、自動的にResourcesフィールドのPutEventsRequestEntry

  • からのレスポンスの場合PutEventsがゼロ以外の値を含むFailedEntryCountの場合、Task状態は、エラーで失敗します。EventBridge.FailedEntry

他のででを使用してを設定する方法については、「Step Functions」を設定する方法の詳細については、AWSサービスの詳細については、」統合サービスの IAM ポリシー

Step Functions、Amazon EventBridge と統合するためのサービス統合 API を提供します。これにより、Step Functions ワークフローから直接カスタムイベントを送信することで、イベントドリブンアプリケーションを構築できます。

PutEventsAPI を使用する場合は、送信するイベントの特定のパターンに一致する EventBridge ルールをアカウント内に作成する必要があります。たとえば、次のことができます。

  • EventBridge ルールに一致するイベントを受信して出力する Lambda 関数をアカウント内に作成します。

  • 特定のイベントパターンと一致し、Lambda 関数をターゲットとするデフォルトのイベントバスのアカウントに EventBridge ルールを作成します。

詳細については、以下を参照してください。

注記

Step Functions には、タスクの最大の入力または結果データサイズのクォータがあります。これにより、別のサービスとの間でデータを送受信するときに、UTF-8 でエンコードされた文字列として 262,144 バイトのデータに制限されます。「ステートマシンの実行に関連するクォータ」を参照してください。

サポートされるEventBridge API

サポートされる EventBridge API および構文は次のとおりです。

以下には、が含まれます。Taskカスタムイベントを送信する:

{ "Type": "Task", "Resource": "arn:aws:states:::events:putEvents", "Parameters": { "Entries": [ { "Detail": { "Message": "MyMessage" }, "DetailType": "MyDetailType", "EventBusName": "MyEventBus", "Source": "my.source" } ] }, "End": true }

エラー処理

-PutEventsAPI は、エントリの配列を入力として受け取り、結果エントリの配列を返します。限り、PutEventsアクションが成功しました。PutEventsは、1つ以上のエントリが失敗した場合でも、HTTP 200レスポンスを返します。PutEventsは、失敗したエントリの数を返します。FailedEntryCountフィールド。

Step Functions、FailedEntryCountが 0 より大きくなるようにします。それがゼロより大きい場合、Step Functions エラーで状態に失敗します。EventBridge.FailedEntry。これにより、タスク状態の Step Functions の組み込みエラー処理を使用して、失敗したエントリがある場合にキャッチまたは再試行できます。FailedEntryCountレスポンスからの。

注記

冪等性を実装していて、すべてのエントリで安全に再試行できる場合は、Step Functions の再試行ロジックを使用できます。Step Functions から成功したエントリを削除しません、PutEvents再試行する前に入力配列を返します。代わりに、元のエントリの配列で再試行します。