- 新しい順
- 投票が多い順
- コメントが多い順
EventBridgeのトリガー起動ルールでStep Functionsを実行する際、既に実行中のState Machineを再度起動させないようにする直接的な方法はありません。しかし、この要件を満たすためのいくつかのアプローチを検討することができます。
-
Step Functions側での制御: State Machineの設計時に、実行開始時にチェックを行うロジックを組み込むことができます。例えば、DynamoDBなどのデータストアを使用して現在の実行状態を追跡し、新しい実行を開始する前にその状態をチェックすることができます。
-
Lambda関数を使用した中間層: EventBridgeルールのターゲットとしてLambda関数を使用し、その関数内でStep Functionsの現在の実行状態をチェックしてから新しい実行を開始するかどうかを決定することができます。
-
Step Functions APIの利用: Lambda関数内でStep Functions APIを使用して、特定のState Machineの実行状態を確認し、実行中でない場合にのみ新しい実行を開始することができます。
-
カスタムアプリケーションロジック: アプリケーション層で実行状態を管理し、EventBridgeルールが発火した際にカスタムロジックを通じて実行制御を行うことも可能です。
これらのアプローチは、直接EventBridgeで制御するのではなく、追加のロジックや中間層を導入することで、要件を満たすことを目指しています。実装の詳細は使用するAWSサービスやアプリケーションのアーキテクチャによって異なる可能性があります。
Sources
AWS Step Functions invoke action reference - AWS CodePipeline
Event-Driven Integration – Amazon EventBridge Event Bus– Amazon Web Services
EventBridgeRule - AWS Serverless Application Model
関連するコンテンツ
- AWS公式更新しました 3年前
