Lambda関数を使用したCloudWatchログの収集
Amazon CloudWatchログは、複数のAWSサービスおよびアプリケーションからのログを一元管理するシステムです。CloudWatchログとSite24x7の連携では、特定のエラーコードやフィールドを検索し、分析することで、トラブルシューティングの際に役立てることができます。
ログプロファイルの作成
CloudWatchログを収集するには、まずログプロファイルを作成する必要があります。[AppLog] > [ログプロファイル] > [ログプロファイルの追加]へ移行し、以下の手順へ進みます:
- プロファイル名: ログプロファイル名を入力します。
- ログタイプ: [CloudWatchログ]を選択します。AWSアカウントで[CloudWatchログ]を有効化していない場合は、こちらの手順をご覧ください。
- ログソース: [Amazon Lambda]を選択します。
- [保存]をクリックします。
- Lambda関数の設定方法は、こちらをご覧ください。
AWS 設定
1. Lambdaコードの取得
以下リンクから、Lambda関数に必要なコードを取得します:
https://github.com/site24x7/applogs-aws-lambda/blob/master/cloudwatchlogs/cloudwatchlogs-sender.py
2. Lambda関数の設定
- [サービス]のドロップダウンリストから[Lambda]を選択し、[関数の作成]をクリックします。スクラッチから[作成者]を選択して、関数名を入力します。また、ランタイムとして、Python 3.7を選択します。
- アクセス権限: ベーシックLambdaアクセス権限で新規IAMロールを作成するか、既存のIAMロールを選択します。新規ロールを作成して、他のサービスにアクセス権限を拡張できるオプションもあります。
- トリガーの追加: スクロールダウンして、[CloudWatchログ]をクリックします。追加されたログファイルは、Lambda関数によりSite24x7へ送信されます。
- トリガーの設定
- ロググループ: ソースとして機能するCloudWatchロググループを選択します。選択したグループ内でイベントが発生すると、Lambda関数が呼び出されます。
- フィルター名: フィルター名を選択します。
- [トリガーを有効にする]チェックボックスを選択し、[追加]をクリックします。
- ウィンドウが開いたら、以下に示すように[Lambda関数]を選択します:
- [エディター]までスクロールし、以下のリンクに表示されているコードを入力します:
- コードを入力したら、Site24x7 Webクライアントへ移動し、[管理] > [Applogs] > [ログプロファイル]の順に移行します。そして、作成したログプロファイルを選択し、画面に表示されるコードを、[環境変数]フィールドの変数logtypeConfigへの入力としてコピーします。
CloudWatch ロギングの設定
- AWS管理コンソールへログインし、[サービス]のドロップダウンメニューから[CloudWatch]を選択します。
- [ログ]をクリックし、[アクション]のドロップダウンメニューから[ロググループの作成]を選択します。
- [ログストリームの作成]を選択し、ロググループに追加するログの名前を入力します。ロググループに新規のログエントリーが追加されると、Lambda関数がトリガーされ、Site24x7へ送られます。
関連するログタイプ