Apache HTTP サーバ バージョン 2.2
This document refers to a legacy release (2.2) of Apache httpd. The active release (2.4) is documented here. If you have not already upgraded, please follow this link for more information.
You may follow this link to go to the current version of this document.
説明: | サーバに送られたリクエストの forensic ロギング |
---|---|
ステータス: | Extension |
モジュール識別子: | log_forensic_module |
ソースファイル: | mod_log_forensic.c |
互換性: | mod_unique_id はバージョン 2.1 からは必須では
なくなった |
このモジュールはクライアントリクエストの forensic ロギングを 行ないます。ログ収集はリクエストの処理の前と後に行なわれますので、 forensic ログは各リクエストに対して二行ログ収集します。 Forensic ロガーは非常に厳密です。これは以下のことを意味します:
CoreDumpDirectory
ディレクティブの設定に依ります)。Forensic ログの出力を検査するためには、
配布物の support ディレクトリにある check_forensic
スクリプトが役に立つでしょう。
各リクエストは2回ログ収集されます。最初はリクエストが処理される 前 (つまり、ヘッダを受け取った後) です。2度目のログは リクエストが処理された後、通常のログ収集と同じときに 行なわれます。
各リクエストを識別するために、リクエストには
一意なリクエスト ID が割り当てられます。この forensic ID は
フォーマット文字列 %{forensic-id}n
を使うことで
通常の transfer ログにログ収集することもできます。
mod_unique_id
を使っている場合は、それが生成する
ID が使われます。
最初の行は forensic ID、リクエスト行と受け取ったすべてのヘッダを
パイプ文字 (|
) で分離してログ収集します。
例えば以下のようになります (実際はすべて同じ行になります):
+yQtJf8CoAB4AAFNXBIEAAAAA|GET /manual/de/images/down.gif
HTTP/1.1|Host:localhost%3a8080|User-Agent:Mozilla/5.0 (X11;
U; Linux i686; en-US; rv%3a1.6) Gecko/20040216
Firefox/0.8|Accept:image/png, etc...
最初のプラス文字がこのログは最初のログであることを示します。 二番目の行はマイナス文字と ID のみです:
-yQtJf8CoAB4AAFNXBIEAAAAA
check_forensic
スクリプトは引数としてログファイルの名前を
取ります。+
/-
の ID の組を調べ、完了していない
リクエストがある場合は警告を発します。
ログファイルが保存されるディレクトリがサーバを起動したユーザ 以外で書き込み可能になっているときにセキュリティが破られる可能性が あることについての詳細はセキュリティのこつを 参照してください。
説明: | Forensic ログのファイル名を設定する |
---|---|
構文: | ForensicLog filename|pipe |
コンテキスト: | サーバ設定ファイル, バーチャルホスト |
ステータス: | Extension |
モジュール: | mod_log_forensic |
ForensicLog
ディレクティブは forensic 解析のための
サーバへのリクエストをログ収集に使います。
各ログエントリには、普通の CustomLog
ディレクティブを使ってリクエストと関連付けることの
できる
一意な ID が割り当てられます。mod_log_forensic
は
forensic-id
というトークンを作成し、フォーマット文字列
%{forensic-id}n
を使うことでそのトークンを transfer ログに
追加することができます。
引数はログが書き出される位置を指定し、以下の 2種類の値のどちらかを 取ることができます:
ServerRoot
からの
相対ファイル名|
" と、その後にログ情報を標準入力から
受け取るプログラム。プログラム名は ServerRoot
からの相対パスとしても
指定できます。
プログラムを使う場合、そのプログラムは httpd
を起動したユーザで
実行されます。つまり、サーバが root で実行された場合は root で
実行されるということです。プログラムが安全であるか、より権限の少ない
ユーザに切り替えるようになっていることを確かめてください。
Unix 以外のプラットフォームでファイル名を入力するときは、 プラットフォームがバックスラッシュの使用を許可している場合でも、 スラッシュのみが使われるように気をつけてください。 普通は設定ファイルすべてにおいて、スラッシュの方を使用するように してください。