Lambda関数を使用したApplication load Balancerログの収集
Application Load Balancersは、受信するアプリケーショントラフィックをEC2インスタンスなどのさまざまなリソースに分配します。そのため、Load Balancerのアクセスログには、クライアントIPアドレス、ネットワークパス、およびサーバーレスポンスに関する重要な情報が含まれています。Site24x7でApplication Load Balancerログを監視すると、トラフィックパターンに関する洞察が得られ、トラブルシューティングの際に役立ちます。
ログプロファイルの作成
Application Load Balancerログを収集するには、まずログプロファイルを作成する必要があります。[AppLog] > [ログプロファイル] > [ログプロファイルの追加]へ移動し、以下の手順に進みます:
- プロファイル名: ログプロファイル名を入力します。
- ログタイプ: [ELBアプリケーションログ]を選択します。AWSアカウントでELBアクセスログを有効にしていない場合は、こちらの手順をご覧ください。
- ログソース: [Amazon Lambda]を選択します。
- [保存]をクリックします。
- Lambda関数の設定方法は、こちらをご覧ください。
Lambda関数の設定
- [サービス]のドロップダウンリストから[Lambda]を選択し、[関数の作成]をクリックします。スクラッチから作成者を選択し、関数の名前を入力します。また、ランタイムとしてPython 3.7を選択します。
- アクセス権限: [AWSポリシーテンプレート]から新規ロールを作成するか、既存のIAMロールを選択します。[ポリシーテンプレート]のドロップダウンメニューで[Amazon S3 オブジェクトの読み取り専用権限]を選択し、ロール名を入力します。また、新規ユーザーロールを作成して、他のサービスにアクセス権限を拡張できるオプションもあります。
- トリガーの追加: スクロールダウンし、[S3バケット]を選択します。S3バケットへ追加されたログファイルは、Lambda関数によってSite24x7へ送信されます。
- トリガーの設定
- バケット:ログが収集されるS3バケット名を入力します。
- イベントタイプ: [すべてのオブジェクト作成イベント]を入力します。
- [追加]をクリックします。
- 表示されるウィンドウで、以下に示すように[Lambda関数]をクリックします:
- [エディター]までスクロールダウンし、以下のリンクに表示されているコードを入力します:
https://github.com/site24x7/applogs-aws-lambda/blob/master/s3/s3-sender.py
- コードを入力したら、Site24x7 Webクライアントへ移動し、[管理] > [Applogs] > [ログプロファイル]の順に移動します。そして、作成した[ログプロファイル]を選択し、画面に表示されるコードを、[環境変数]フィールドの変数logtypeConfigへの入力としてコピーします。
関連するログタイプ