📝
[小ネタ] AWS サービスのイベントは EventBridge のデフォルトのイベントバスに送信される
Getting started with Amazon EventBridge - Amazon EventBridge
When an AWS service in your AWS account emits an event, it always goes to the default event bus for your account.
上記仕様について確認してみました。
パターン 1 デフォルトのイベントバスを使用する場合
デフォルトのイベントバス内に以下の EventBridge ルールを作成しました。
S3 バケットが作成されたことを検出するイベントパターンです。
{
"source": ["aws.s3"],
"detail-type": ["AWS API Call via CloudTrail"],
"detail": {
"eventSource": ["s3.amazonaws.com"],
"eventName": ["CreateBucket"]
}
}
ターゲットは CloudWatch Logs のロググループに設定しました。
ルール作成後、S3 バケットを作成し、ロググループにイベントが配信されていることを確認できました。
以上より、デフォルトのイベントバスにイベントが送信されていることを確認できました。
パターン 2 カスタムイベントバスを使用する場合
Creating an event bus in Amazon EventBridge - Amazon EventBridge
デフォルト設定でカスタムイベントバスを作成し、カスタムイベントバス内にパターン 1 と同じ設定で EventBridge ルールを作成しました。
ルール作成後、S3 バケットを作成してもロググループにイベントが配信されていないことを確認できました。
以上より、カスタムイベントバスにはイベントが送信されていないことを確認できました。
まとめ
今回は AWS サービスのイベントは EventBridge のデフォルトバスに送信されるという仕様について確認してみました。
どなたかの参考になれば幸いです。
Discussion