概要
CloudwatchLogsとEventBridgeによってLambdaがトリガーされた際に関数には、
どんなもデータが渡されているのかみていきます。
構成
以下のようなリソース群を作成していきます。
Lambdaのトリガーの際に連携されたデータを送信先のCloudWatchLogsで確認していきます。
構築
練習がてらCludFormationで構築していきます。
多いので以下にまとめています。
上記をS3に配置してCloudFormation実行とLambda関数にコードを参照させています。
ログのプッシュ
サブスクリプションフィルタには「Error」の単語が含まっていた際に、Lambda関数を実行するようにしています。それを含めてログをロググループを実行していきます。
aws logs put-log-events --log-group-name sender-log-group --log-stream-name sender-log-stream --log-events timestamp=$(date +%s%3N),message="Error test log"
結果
以下のような形式で送られてくるようです。
{
"messageType": "DATA_MESSAGE",
"owner": "AWSアカウントID",
"logGroup": "送信元ロググループ名",
"logStream": "送信元ロググループのログストリーム名",
"subscriptionFilters": [
"送信元ロググループのサブスクリプションフィルター名"
],
"logEvents": [
{
"id": "ログイベントID(実際はランダムな数列が入っている)",
"timestamp": 1746864558130,
"message": "Error test log"
}
]
}
今回の検証は以上になります。
ログ監視の設計構築の助けになれば幸いです。
お疲れ様でした。