みなさんこんにちは。マネージドサービス部の塩野です。 元ネタはこちらですが、本記事はAmazon RDSのイベントをCloudwatchLogs経由で送信する方法をご紹介します。
設定概要
RDSのイベントについてはEventBridgeで取得し、そのイベントをCloudwatchLogsに配信することで、配信されたログをトリガーとしてNew RelicなどのSaaSベンダーのログ送信用Lambdaをキックする流れになります。
設定
ログ送信用Lambdaの設定
New Relicの設定はこちらになります。 docs.newrelic.com
CloudwatchLogsの設定
1.AWSのマネコンからCloudwatchの画面を開く
2.ロググループ画面から「ロググループを作成」をクリック
3.ロググループ名を入力する
※ /aws/events/ の後ろに任意の名前を記載
※例)/aws/events/name-of-loggroup
4.作成ボタンをクリックする
5.作成したロググループの詳細画面を開き、サブスクリプションフィルターを開く
6.サブスクリプションフィルターの中の作成をクリックし、メニューの中の「Lambdaサブスクリプションフィルターを作成」をクリック
7.Lambda 関数でログ送信用Lambdaの設定の項で作成したLambda関数名を選択
8.ログの形式はJSONを選択
9.任意のサブスクリプションフィルター名を入力
10.ストリーミングを開始をクリック
EventBridgeの設定
1.AWSのマネコンからAmazon EventBridgeの画面を開く
2.バスの中のルールの画面を開く
3.「ルールを作成」をクリック
4.名前の欄に任意の名前を入力し次へをクリック
5.イベントパターンを選択して次へをクリック
6.ターゲットを選択の中で「AWSのサービス」を選択
7.ターゲットは「CloudWatch ロググループ」を選択
8.ロググループ名でCloudwatchLogsの設定で作成したロググループ名を選択する
※ロググループ名の最初に入力してある「/aws/events/ 」がない場合はロググループの選択欄に表示されません
9.タグ名は必要に応じて入力し、次へをクリック
10.「ルールの作成」をクリック
総評
EventBridgeの設定が一番大事なのですが、ここで設定する際にイベントの種類はRDS以外にEC2やAmazon Healthなど様々なサービスがありますので、うまく使うととても便利な機能と思います。
この記事がどなたかのお役に立てれば幸いです。
さいごに
弊社はAWSパートナーネットワーク(APN)の最上位の「プレミアコンサルティングパートナー」に認定されており、AWSの導入以外に運用のサポートもしております。AWSのインフラ基盤運用で「人が少なくて夜中障害が起きた時に毎回電話対応もツライし、障害時に手順に沿ってサービスやインスタンスを再起動してもらえたらうれしいなぁ・・」といったような運用まで手が回らなくてお困りの方がいらっしゃったら、弊社AWSの運用代行サービスで運用のサポートをお受けすることもできますのでお気軽にご相談ください。
関連記事
blog.serverworks.co.jp
blog.serverworks.co.jp
blog.serverworks.co.jp