Logtailプラグインを使用して、Apache設定ファイルで指定したログ形式に基づいて、Apacheログを構造化データに解析できます。 この場合、ログは複数のキーと値のペアに解析されます。
Introduction to Apache logs
Apacheサーバーは、Apache構成ファイルで指定されたログ表示形式、ログファイルディレクトリ、およびログファイル名に基づいてApacheログを生成します。 たとえば、CustomLog "/var/log/apache2/access_log" combined
と入力した場合、ログは結合ログ形式で表示され、ログファイルディレクトリは /var/log/apache2/access_log
です。
Apacheログ形式
結合ログ形式:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
一般的なログ形式:
LogFormat "%h %l %u %t \"%r\" %>s %b"
カスタムログ形式:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %D %f %k %p %q %R %T %I %O" customized
次の表に、ログフィールドを示します。 詳細については、「mod_log_config」をご参照ください。
Format
項目
説明
%a
client_addr
クライアントの IP アドレス。
%A
local_addr
ローカルIPアドレス。
%b
response_size_bytes
レスポンスのバイト数。 バイトが送信されない場合、このフィールドにハイフン (-) が表示されます。
%B
response_bytes
レスポンスのバイト数。 バイトが送信されない場合、このフィールドに数字0が表示されます。
%D
request_time_msec
リクエストの処理に必要な時間。 単位:マイクロ秒。
%f
filename
ファイル名。
%h
remote_addr
リモートホストの名前。
%H
request_protocol_supple
リクエストプロトコル。
%I
bytes_received
サーバーが受信したバイト数。 このフィールドは、mod_logioモジュールを有効にした後にのみログに記録されます。
%k
keep_alive
接続で処理されるキープアライブリクエストの数。
%l
remote_ident
識別のためにリモートホストによって提供される情報。
%m
request_method_supple
HTTP リクエストの方式。
%O
bytes_sent
サーバーによって送信されるバイト数。 このフィールドは、mod_logioモジュールを有効にした後にのみログに記録されます。
%p
remote_port
サーバーのポート番号。
%P
child_process
子プロセスのID。
%q
request_query
クエリ文字列。 クエリ文字列が存在しない場合、空の文字列が表示されます。
%r
request
リクエストの最初の行。 この行は、HTTPリクエストメソッド、アドレス、およびHTTPバージョンで構成されます。
%R
response_handler
サーバーでレスポンスを生成するハンドラーの型。
%s
status
レスポンスの初期HTTPステータス。
%>s
status
レスポンスの最終的なHTTPステータス。
%t
time_local
サーバーがリクエストを受信した時点。
%T
request_time_sec
リクエストの処理に必要な時間。 単位は秒です。
%u
remote_user
クライアントがリクエストを送信するために使用するユーザー名。
%U
request_uri_supple
リクエスト内のURI。 URIにはクエリ文字列は含まれません。
%v
server_name
サーバーの名前。
%V
server_name_canonical
サーバーの名前。 名前は、UseCanonicalNameディレクティブを使用して指定します。
“%{User-Agent}i”
http_user_agent
クライアントに関する情報。
“% {リファラー} i”
http_referer
ソースwebページのURL。
エントリーポイント
Logtailプラグインを使用してログを処理する場合は、Logtail設定を作成または変更するときにLogtailプラグイン設定を追加できます。 詳細については、「概要」をご参照ください。
設定の説明
パラメーター | 説明 |
ログ形式 | Apache設定ファイルで指定されているログ形式。 有効な値: common、combined、Custom。 |
APACHE Logformatの設定 | Apache設定ファイルで指定されているログ設定セクション。 ほとんどの場合、このセクションはLogFormatから始まります。
|
元のフィールド | 解析前のログコンテンツを格納する元のフィールド。 デフォルト値: content。 |
正規表現 | Apacheログを抽出するために使用される正規表現。 Simple Log Serviceは、APACHE Logformat設定に基づいて正規表現を自動的に生成します。 |
抽出フィールド | APACHE Logformat Configurationに基づいて自動的に抽出されるキー。 |
解析に失敗した場合に元のフィールドを保持する | [解析に失敗した場合に元のフィールドを保持する] を選択した後、解析に失敗した場合に元のフィールドが保持されます。 |
解析が成功した場合に元のフィールドを保持する | [解析が成功した場合に元のフィールドを保持する] を選択した後、解析が成功した場合に元のフィールドが保持されます。 |
元のフィールドの新しい名前 | [解析が失敗した場合に元のフィールドを保持する] または [解析が成功した場合に元のフィールドを保持する] を選択した場合、ログコンテンツを格納する元のフィールドの名前を変更できます。 |