■ IISで選択できるログの形式
IISで設定できるログ形式には下記の3種類がある。
共にASCII形式なので、テキストエディターで内容を見ることが可能だ。
・IISログ形式
カスタマイズ不可能
カンマ区切り
時間は現地時間
保存ログファイル名は「in****.log」
(ログの例:実際には1行)
192.168.0.100, -, 2004/03/10, 19:10:30, W3SVC1,
PC01, 192.168.0.200, 340, 235, 0, 200, 0, GET, /index.html, -,
・W3C拡張ログ形式
カスタマイズ可能
半角スペース区切り
時間は協定世界時(UTC) ← GMT(Greenwich Mean Time:グリニッジ標準時)と同意
保存ログファイル名は「ex****.log」
(ログの例:実際には1行)
2004-03-10 10:10:30 192.168.0.200 GET /index.html
- 80 - 192.168.0.100 Mozilla/4.0(compatible;+MSIE+5.0;+Windows+98;+DigExt)
- 200 0 0
・NCSAログ形式
CLF(Common Log Format)とも呼ばれる。
カスタマイズ不可能
半角スペース区切り
時間は現地時間
保存ログファイル名は「nc****.log」
(ログの例)
192.168.0.100 - - [10/Mar/2004:19:10:30 +0900] "GET /index.html HTTP/1.0" 200 -
IISログ形式とNCSAログ形式はReferer(参照元)や
User Agent(クライアント使用ブラウザ)を取得できないので
(カスタマイズ不可能であり追加もできない)、
ある程度本格的なログ解析をするのであれば、W3C拡張ログ形式にすべきだろう。
■ W3C拡張ログ形式のカスタマイズ
W3C拡張ログ形式はカスタマイズが可能である。
よって、必要な項目を取得し、不要な項目は取得しないようにできる。
現在取得している項目は、ログの先頭に#付きで記されている。
#Software: Microsoft Internet Information Services 5.0
#Version: 1.0
#Date: 2004-03-10 19:00:00
#Fields: date time s-ip cs-method cs-uri-stem cs-uri-query
s-port cs-username c-ip cs(User-Agent) cs(Referer)
sc-status sc-substatus sc-win32-status
(実際には1行)
取得項目を変更するには、下記の手順で行う。
「インターネットインフォメーションサービス」→
「既定のWebサイト(デフォルト値)」→「プロパティ」をクリック。
「Webサイトのプロパティ」画面で「ログの収集を有効にする」にチェックを入れ、
ログ形式を「W3C拡張ログファイル形式」にして「プロパティ」をクリック。
「拡張プロパティ」をクリック。
カスタマイズできる一覧が表示される。
広く使われているApacheのcombined形式
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
に近づけるためには、下記の12項目にチェックを入れる。
date
time
cs-method
cs-uri-stem
cs-uri-query
cs-username
c-ip
cs(User-Agent)
cs(Referer)
sc-status
cs-version
sc-bytes
s-ip(サーバのIPアドレス)やs-port(サーバのポート)は固定であれば取得する必要はない。
これらを取らないことで、若干ではあるが、ログの肥大化を押さえることが可能だ。
■ 本サイト内関連事項
AWStatsでW3C拡張ログ形式を解析する
WEBサーバにrobots.txtを設置する
■ 参考リンク
サイトの利用状況のログについて(Microsoft TechNet)
W3C 拡張形式のログをカスタマイズする(Microsoft TechNet)
ログ プロパティ リファレンス(Microsoft TechNet)
(2004/03 作成)