Logtail プラグインを使用して、Apache 構成ファイルで指定したログ形式に基づいて、Apache ログを構造化データに解析できます。この場合、ログは複数のキーと値のペアに解析されます。
Apache ログの概要
Apache サーバーは、Apache 構成ファイルで指定されたログ表示形式、ログファイルディレクトリ、およびログファイル名に基づいて Apache ログを生成します。たとえば、CustomLog "/var/log/apache2/access_log" combined
と入力すると、ログは combined ログ形式で表示され、ログファイルディレクトリは /var/log/apache2/access_log
になります。
Apache ログ形式
combined ログ形式:
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
common ログ形式:
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」をご参照ください。
形式
フィールド
説明
%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
接続で処理される 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
クライアントに関する情報。
“%{Referer}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 構成] フィールドの値に基づいて自動的に抽出されるキー。 |
[解析に失敗した場合に元のフィールドを保持する] | 生のログの解析に失敗した後に取得される新しいログに元のフィールドを保持するかどうかを指定します。 |
[解析に成功した場合に元のフィールドを保持する] | 解析後に取得される新しいログに元のフィールドを保持するかどうかを指定します。 |
[元のフィールドの新しい名前] | 保持する元のフィールドの新しい名前。[解析に失敗した場合に元のフィールドを保持する] または [解析に成功した場合に元のフィールドを保持する] を選択した場合は、元のログコンテンツを格納する元のフィールドの名前を変更できます。 |