EventBridge を使用して AWS サービスのイベントをCloudWatch Logs に保管してみた

AWS サービスのイベントは、サービス内の設定ではなく EventBridge から取得する場合もあります
2022.11.11

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

アノテーション株式会社の hato です。

AWS サービスが生成するイベントの多くは EventBridge を通して取得することができ、ターゲットに CloudWatch Logs を指定すると、イベントを CloudWatch Logs に保管できます。

既に CloudFormation を使った構築手順ブログが公開されていますが、AWS マネジメントコンソール(Amazon EventBridge コンソール)を使った構築手順がなかったので、お問い合わせ頂いた際に備えて、やってみました。

AWS サービスからのイベント - Amazon EventBridge

AWS サービスの多くは EventBridge が受け取るイベントを生成します。

やってみた

今回は Amazon ECS が生成するすべてのイベントを CloudWatch Logs に保管する場合の構築例となります。

GitHub - aws-samples/amazon-ecs-stopped-tasks-cwlogs: Automate storing of Amazon ECS Stopped Tasks in Amazon CloudWatch Logsより引用

Amazon EventBridge コンソールから「ルールを作成」を選択します。

「名前」に任意の名前を入力し、「次へ」をクリックします。

赤枠の部分を編集します。

「AWS のサービス」から取得したいサービスを選択。「イベントタイプ」からすべてのイベントを選択し、「次へ」をクリックします。
※右側の「イベントパターン」は自動的に生成されます(直接編集も可能です)

「ターゲットを選択」からCloudWatch ロググループを選択し、出力先となるロググループ名を入力。「次へ」をクリックします。

「次へ」をクリックします。

「ルールの作成」をクリックします。

「正常に作成しました」と表示されたことを確認します。

実際の挙動

イベントが生成されると、自動的に CloudWatch Logs にイベントが記録されました。

参考資料

最後に

この記事が誰かのお役にたてば幸いです。

アノテーション株式会社について

アノテーション株式会社は、クラスメソッド社のグループ企業として「オペレーション・エクセレンス」を担える企業を目指してチャレンジを続けています。「らしく働く、らしく生きる」のスローガンを掲げ、様々な背景をもつ多様なメンバーが自由度の高い働き方を通してお客様へサービスを提供し続けてきました。現在当社では一緒に会社を盛り上げていただけるメンバーを募集中です。少しでもご興味あれば、アノテーション株式会社WEBサイトをご覧ください。