継続は力なり

タイトル通り定期的な更新を心掛けるブログです。

EventBridge ルールでワイルドカードのイベントを拾い Aurora クラスターとインスタンス作成を検知する

タダです.

Aurora を複製時に EventBridge ルールで特定 Aurora クラスターと DB インスタンスの作成タイミングを検知して Step Functions に処理させたいと思って,EventBridge ルールでワイルドカードを使ってみたので備忘録にまとめます.

EventBridge ルールのワイルドカード

EventBridge ルールのワイルドカードサポートは2023年10月に行われたもので,今回 Aurora を複製した時に特定の Aurora のイベントを拾って Step Functions で処理させたいと思ったのがきっかけで利用してみました.

aws.amazon.com

Aurora のイベントの中で拾えるもの

Aurora のイベントとして拾えるものはドキュメントに記載があります.この中から DB クラスター作成イベントと DB インスタンスの再起動イベントを拾うようにしました.DB クラスター作成イベントは疑問がないところだと思いますが,DB インスタンスはなぜ再起動イベントを拾ったかというと Aurora を複製イベントを見た際に①インスタンス作成 → ②インスタンスのシャットダウン → ③インスタンスの再起動 → ④(拡張モニタリングを有効化している場合)拡張モニタリングの有効化の順番で処理が走ったため,③のイベントを拾って最終的に DB 作成完了の通知を出そうと考えた次第です.

hoge から始まる Aurora クラスターの作成イベントを拾う場合

{
  "detail": {
    "EventID": ["RDS-EVENT-0170"],
    "SourceIdentifier": [{
      "wildcard": "hoge-*"
    }]
  },
  "detail-type": ["RDS DB Cluster Event"],
  "source": ["aws.rds"]
}

hoge から始まり clone という DB インスタンスの再起動イベントを拾う場合

{
  "detail": {
    "EventID": ["RDS-EVENT-0006"],
    "SourceIdentifier": [{
      "wildcard": "hoge-*-clone"
    }]
  },
  "detail-type": ["RDS DB Instance Event"],
  "source": ["aws.rds"]
}

これで特定のクラスターとインスタンスに関するイベントを拾えるようになるので,後はターゲットに Step Functions を指定すれば OK です.Step Functions からの通知部分は次の記事で書きます.

まとめ

EventBridge ルールのワイルドカードを使って特定 Aurora クラスターと DB インスタンスの作成タイミングを検知するルールを初めて使ったので記事にまとめました.

関連記事

sadayoshi-tada.hatenablog.com

sadayoshi-tada.hatenablog.com