概要
- EventBridgeにて、S3のバケットとフォルダを指定してオブジェクトの作成イベントをキャッチする方法を簡単にまとめる。
情報
- 今回、オブジェクトの作成イベントをEventBridgeでキャッチする方法をまとめる。
- 詳細な情報をまとめておく
- バケット名:Foo
- フォルダ名:/look
- EventBridgeルール名:s3-upload-rule
- EventBridgeのターゲット:下記記事で作成したSNSトピック
- 詳細な情報をまとめておく
方法
-
AWSにログインし、EventBridgeのホームまで移動する。
-
左サイドバーで「ルール」をクリックする。
-
遷移先ページで「ルールを作成」をクリックする。
-
下記の様に設定して「次へ」をクリックする。
項目 内容 備考 名前 s3-upload-rule 説明 未記入 イベントバス default ルールタイプ イベントパターンを持つルール -
下記の様に設定して「次へ」をクリックする。
項目 内容 備考 イベントソース AWSイベントまたはEventBridgeパートナーイベント サンプルイベント 記載しない 作成のメソッド スキーマを使用する スキーマタイプ スキーマレジストリからスキーマを選択する スキーマレジストリ aws.events スキーマ aws.s3@ObjectCreated モデル bucket・keyをそれぞれ設定 下記画像で補足 -
モデル登録部分下部の「JSONでイベントパターンを生成する」をクリックする。
-
生成されたjsonのdetailより前の部分に下記の2行を入れる。
"source": ["aws.s3"], "detail-type": ["Object Created"],
-
記入後jsonはおそらく下記の様になる。
{ "source": ["aws.s3"], "detail-type": ["Object Created"], "detail": { "bucket": { "name": [{ "prefix": "Foo" }] }, "object": { "key": [{ "prefix": "look" }] } } }
-
下記の様に設定して「次へ」をクリックする。(こちらは皆さんのターゲットに合わせて適宜変更する)
項目 内容 備考 ターゲットタイプ AWSのサービス ターゲットタイプの選択 SNSトピック トピック sns-test -
タグは特に設定しない。
-
内容を確認し「ルールの作成」をクリックする。
確認
- S3のFooバケットのlookフォルダにファイルをアップロードしEventBridgeがイベントをキャッチするか確認する。