あるデータエンジニアリングチームは、本番環境で複数のAWS Glue ETLジョブを運用しています。 ジョブが失敗した際に、ジョブ名・実行ID・エラーメッセージを含む通知を即座にメールと社内Slackチャンネルの両方に送りたいと考えています。 ETLスクリプト自体は変更せずに実現できる、最も適切なアーキテクチャはどれですか?
Amazon EventBridge ルールを作成し、AWS Glue ジョブの状態変化イベント(FAILED)をキャプチャして Amazon SNS トピックに送信する。SNS トピックにメールサブスクリプションと AWS Chatbot(Slack 連携)を設定する。 Amazon EventBridge は AWS Glue のジョブ状態変化をリアルタイムでネイティブに検知できる。イベントペイロードにはジョブ名・実行 ID・エラーメッセージが含まれており、SNS と AWS Chatbot を組み合わせることで ETL コードを変更せずにメールと Slack の両方へ即時通知できる。 選択肢B は glue.driver.ExecutorRunTime はジョブの実行時間メトリクスであり、ジョブの失敗状態を直接検知できないため不適切。 選択肢C は ポーリング方式のため最大 15 分の通知遅延が生じ、イベント駆動型の EventBridge と比較して非効率である。 選択肢D は CloudTrail は管理プレーンの API コール(クラスター作成・変更等)を記録するものであり、ETL ジョブの実行状態変化をリアルタイムにルーティングする用途には使えない。