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

AWS Elastic Load Balancing- Classic のログの収集

この手順では、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 (保存)] をクリックします。

コレクタの設定

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

ELB ソースの設定

AWS Sources

フィールド抽出ルール

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

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