httpサーバのApacheが書き出すアクセスログ(acsess_log)は,環境設定ファイル(httpd.conf)の中で定義されている。どのようなログフォーマットで記録するのかは,自由にカスタマイズすることが可能だ。まず最初に,httpd.confの中から次のような行を見つけ出そう。
# cat /usr/local/apache/conf/httpd.conf | more あるいは, # cat /etc/httpd/conf/httpd.conf | more |
LogFormat "%h %l %u %t \"%r\" %s %b" |
この構文で「%」が付く変数一覧は次の通りだ。
表1■LogFormat変数 | ||||||||||||||||||||||||
|
表1に挙げた「%{}」で示される変数は任意の内容を参照するものだ。たとえば、「%{User-Agent}i」はリクエストヘッダ内のUser-Agentフィールド内容を示す。
LogFormat "%h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-Agent}i\"" |
上記の定義を行った場合,アクセスログには次のように記録される。色分けをしたので見比べてほしい。
xxxx.zdnet.co.jp - - [17/Oct/2001:19:40:23 +0900] "GET /mrtg/snmp.1day.gif HTTP/1.1" 200 2426 "http://www.zdnet.com/""Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.1)" |
Copyright © ITmedia, Inc. All Rights Reserved.