メインコンテンツまでスキップ
Sumo Logic Japanese

AWS Elastic Load Balancing のログの収集

この手順では、Amazon Web Services (AWS) Elastic Load Balancing (ELB) ログへのアクセスを有効化して Sumo Logic に取り込む方法について説明します。

ログ タイプ

ELB ログは、ログを有効化するときに指定したバケットに .log ファイルとして保存されます。

これらのログの収集を有効化するプロセスは、「AWS ELB Enable Access Logs (Classic Load Balancer のアクセスログの有効化)」で説明されています。

ログ自体には、以下のフィールドが次の順序で含まれています:
datetime、ELB_Server、clientIP、port、backend、backend_port、requestProc、ba_Response、cli_Response、ELB_StatusCode、be_StatusCode、rcvd、send、method、protocol、domain、server_port、path

ログの形式については、「AWS ELB Access Log Collection (Classic Load Balancer のアクセスログの有効化)」を参照してください。

前提条件

  • こちらの Sumo Logic の手順に従って、AWS アカウントで Elastic Load Balancing のログを有効化します。詳細については、AWS ELB のドキュメントを参照してください。AWS ELB では、ログはデフォルトでは有効になっていません。
  • こちらの Sumo Logic の手順に従って、IAM ユーザへのアクセス権を付与します。
  • ログが、Amazon S3 バケットに配信されることを確認します。

AWS でログを有効にするには、次の手順を実行します。

  1. AWS マネジメント コンソールで、[EC2] > [Load Balancers (ロード バランサー)] の順に選択します。
  2. [Access Logs (アクセス ログ)] で、[Edit (編集)] をクリックします。
  3. [Configure Access Logs (アクセス ログの設定)] ダイアログ ボックスで、[Enable Access Logs (アクセス ログを有効化)] をクリックし、間隔と S3 バケットを選択します。これは、Sumo Logic にログをアップロードする S3 バケットです。
  4. [Save (保存)] をクリックします。

コレクタの設定

ホスト型コレクタを設定します。

ソースの設定

  1. AWS ELB ソースを設定します。
  2. 以下のソース フィールドを設定します。
    1. Name (名前)。(必須) ELB など。
    2. Path (パス)。例: my-bucket/prefix/AWSLogs/123456789012/*.log
    3. Source Category (ソース カテゴリ)。(必須) ELB_Prod など。詳細については、「ベスト プラクティス」を参照してください。
  3. [Advanced (詳細)] セクションを設定します。
    1. Enable Timestamp Parsing (タイムスタンプ パースの有効化)。true
    2. Time Zone (タイムゾーン)。デフォルトではログは UTC で記録されます。
    3. Timestamp Format (タイムスタンプ フォーマット)。自動検出。
  4. [Save (保存)] をクリックします。

フィールド抽出ルール

フィールド抽出ルールには、前に作成したソース カテゴリを使用します。

AWS Elastic Load Balancing ログ

parse "* * *:* *:* * * * * * * * \"* *://*:*/* HTTP" as datetime, ELB_Server, clientIP, port, backend, backend_port, requestProc, ba_Response, cli_Response, ELB_StatusCode, be_StatusCode, rcvd, send, method, protocol, domain, server_port, path

ログ メッセージのサンプル

2017-01-20T23:00:26.059475Z elb-shop-com 10.15.120.181:80 10.34.7.122:80 0.000026 
0.315185 0.000027 200 200 51 1230 "POST https://examplesite.com:443/Common/path HTTP/1.1" 
"Mozilla/5.0 (Safari; Touch) AppleWebKit/537.35+ (HTML, like Gecko) Version/10.3.2.2239 
Mobile Safari/517.35+"

クエリのサンプル

名前 - Geolocation によるリクエスト

_sourceCategory=elb*
| parse "* * *:* *:* * * * * * * * \"* *://*:*/* HTTP" as f1, elb_server, clientIP, port, backend, backend_port, requestProc, ba_Response, cli_Response, ELB_StatusCode, be_StatusCode, rcvd, send, method, protocol, domain, server_port, path nodrop
| parse "* * *:* *:* * * * * * * * \"-" as f1,elb_server,clientIP,port,backend,backend_port,requestProc,ba_Response,cli_Response,ELB_StatusCode,be_StatusCode,rcvd,send
| lookup latitude, longitude, country_code, country_name, region, city, postal_code, area_code, metro_code from geo://default on ip = clientIP
| count by latitude, longitude, country_code, country_name, region, city, postal_code, area_code, metro_code
| sort _count

  • この記事は役に立ちましたか?