AWS CloudWatch Logsにダミーログをポストする手順

AWS CloudWatch Logsを使用して、アプリケーションのログを監視し、アラートを設定することは非常に重要です。本記事では、特に本番環境やSTG環境での動作確認を目的として、CloudWatch Logsにダミーログをポストする手順を解説します。


目次

  1. AWS CLIの準備
  2. ダミーログメッセージの作成
  3. ログストリームの作成
  4. ダミーログのポスト
  5. 確認
  6. 注意事項
  7. 追加情報

1. AWS CLIの準備

まず、AWS CLIがインストールされていることを確認します。AWS CLIは、AWSのサービスにコマンドラインからアクセスするためのツールです。インストールされていない場合、以下のコマンドを実行して設定します。

aws configure

このコマンドにより、AWSの認証情報とデフォルトリージョンを設定できます。


スポンサーリンク

2. ダミーログメッセージの作成

次に、ポストするダミーログメッセージを作成します。以下は、サンプルメッセージです。これらは、特定のバッチ処理の状態を示すものであり、実際のアプリケーションのログに類似しています。

[2734312.880239] app-process[42]: [BATCH] [2024-10-04 10:00:00,000] [main] [INFO] [BATCH] [メール送信処理] バッチ処理を開始します。 
[2734312.884213] app-process[42]: [BATCH] [2024-10-04 10:00:00,100] [main] [WARN] [BATCH] ダミーバッチは実行中です。 
[2734312.884403] app-process[42]: [BATCH] [2024-10-04 10:00:00,200] [main] [INFO] [BATCH] [メール送信処理] バッチ処理が正常に終了しました。 
  • INFO: プロセスが正常に進行していることを示す情報メッセージ。
  • WARN: 潜在的な問題を示す警告メッセージ。この場合、ダミーバッチが実行中であることを示しています。

3. ログストリームの作成

次に、ダミーログをポストするためのログストリームを作成します。AWS CloudWatch Logsでは、ロググループ内に複数のログストリームを作成することができます。以下のコマンドを実行して、dummy-log-streamという名前のログストリームを作成します。

aws logs create-log-stream --log-group-name "/ecs/my-application" --log-stream-name "dummy-log-stream"
  • ロググループ: 同種のログをグループ化するためのコンテナ。例えば、アプリケーションごとにロググループを作成することが一般的です。
  • ログストリーム: 特定のソースから生成されたログのシーケンス。1つのロググループには複数のログストリームを持つことができます。

スポンサーリンク

4. ダミーログのポスト

続いて、作成したログストリームにダミーログをポストします。以下のコマンドを使用して、3つのメッセージをそれぞれポストします。

# 1つ目のメッセージ
aws logs put-log-events --log-group-name "/ecs/my-application" \
                         --log-stream-name "dummy-log-stream" \
                         --log-events timestamp=$(date +%s%3N),message="[2734312.880239] app-process[42]: [BATCH] [2024-10-04 10:00:00,000] [main] [INFO] [BATCH] [メール送信処理] バッチ処理を開始します。"

# 2つ目のメッセージ
aws logs put-log-events --log-group-name "/ecs/my-application" \
                         --log-stream-name "dummy-log-stream" \
                         --log-events timestamp=$(date +%s%3N),message="[2734312.884213] app-process[42]: [BATCH] [2024-10-04 10:00:00,100] [main] [WARN] [BATCH] ダミーバッチは実行中です。"

# 3つ目のメッセージ
aws logs put-log-events --log-group-name "/ecs/my-application" \
                         --log-stream-name "dummy-log-stream" \
                         --log-events timestamp=$(date +%s%3N),message="[2734312.884403] app-process[42]: [BATCH] [2024-10-04 10:00:00,200] [main] [INFO] [BATCH] [メール送信処理] バッチ処理が正常に終了しました。"
  • timestamp: ログイベントが生成された時刻。ミリ秒単位で指定します。
  • message: ログの内容。ここに記述したメッセージがCloudWatchに記録されます。

5. 確認

ダミーログをポストした後、AWS管理コンソールのCloudWatch Logsにアクセスし、/ecs/my-application ロググループ内の dummy-log-stream を確認します。ポストしたダミーログが正しく表示されているか確認してください。


スポンサーリンク

6. 注意事項

  • 本番環境の注意: 実際の業務に影響を与えないよう、事前に関係者に通知してください。
  • タイムスタンプ: timestamp は現在時刻を使用しているため、送信する際に適切な時間で調整する必要があります。

7. 追加情報

CloudWatch Logsの利点

  • リアルタイム監視: CloudWatch Logsは、アプリケーションのリアルタイムなログデータを監視し、異常を迅速に検知するのに役立ちます。
  • カスタムメトリクス: 特定の条件に基づいたカスタムメトリクスを作成し、アラートを設定できます。これにより、必要な情報を即座に取得し、問題に迅速に対応できます。

メトリクスフィルターの設定

  • フィルターパターン: 特定のログイベントを抽出するためのパターンを設定します。これにより、特定のイベントが発生したときにメトリクスとして記録されます。

コスト管理

  • ログの保存期間: CloudWatch Logsは、保存期間を設定できます。不要なログを削除することでコストを削減できます。

この手順を実施することで、AWS CloudWatch Logsにダミーログをポストし、動作確認を行うことができます。何か質問や不明点があれば、xやSNSから気軽にお知らせください!


コメントを残す