ハウツー
Analogを使うためのIIS の設定方法

このハウツーの著者:
2002年4月29日初版;2002年5月17日アップデート

目的

Analogは、世界で最も人気のあるWebのログファイル解析ソフトであるといわれています(Details)。 はじめはUNIX用に書かれていましたが、AnalogはVer.1.9beta4(1996年3月)よりWin32をサポートしはじめ、Ver.2.0(1997年2月)よりネイティブのWin32をサポートするようになりました。したがって、IISを正しく設定することは、Analogの使用を著しく簡単化するだけではなく、望みのレポート出力が容易に得られます。

システム

この例は、SP2(パッチ)を当て、現在のセキュリティパッチをすべて当てたWindows2000のデフォルトのインストールを用い、さらに、IIS 5.0を起動させた環境でテストされ開発されました。IIS4.0が起動しているWindowsNT 4.0にも適用されるはずです。また、現在ベータ版である(2002年10月現在では完成版です)、新しい.NETのWindowsサーバにも適用されるはずです。

この例は、Windows2000サーバかアドバンストサーバが、IISなしでインストールされていると仮定します。

IISのインストール

IISをインストールする基本的な方法は、コントロールパネル内の「アプリケーションの追加と削除」を起動し、「Windowsコンポーネントの追加と削除」を選択します。「インターネットインフォメーションサービス(IIS)」のチェックボックスを選択し、「詳細」ボタンを押します。必要なインストールサービスのチェックボックスを選択します。

IIS Configuration

IISの環境設定

Analogの動作を保証するようにIISの環境を設定するには、いくつかの簡単なステップがあります。また、ログファイル用のディレクトリについて、いくつかの意見を述べます。それによりIISの使い方が簡単になり、システムドライブからログファイルを移動します。

デフォルトの環境設定

デフォルトのIISの環境設定は、以下のようになります

第一段階は、Analogが必要とするすべての情報を含むように、Webサーバのログ設定を行ないます。

Analogを使用するサーバ全体の設定

サーバ(この場合はNTLewis1)を右クリックし、「プロパティ」を選択して、サーバのプロパティウィンドウをポップアップさせます。

「マスタプロパティ」の画面で「編集」ボタンをクリックします。

この画面の編集

アクティブログ形式が「W3C 拡張ログファイル形式」であることを確認してください。

「ログ収集を有効にする」フレームで「プロパティ」ボタンをクリックしてください。

この画面の編集

「新しいログ期間」が希望のローテーション期間になっているか確認してください。一般的には毎日、ローテーションを行いますが、多量のアクセスがあるサイトでは毎時間を設定するのがよいでしょう。

「ファイル名およびロールオーバーに地域設定を使用する」にチェックを入れてもかまいません。これは、ログファイルのローテーションが、GMT(世界標準時)ではなく、ローカルな時間の夜中に行なわれるという意味です。しかし、これにチェックを入れても入れなくても、IISはGMT時間を使いWebのアクセスログをとります。GMT書式を補正するためには、LOGTIMEOFFSETコマンドをLOGFILEコマンドの前に置く必要があります。このオフセットは、サマータイムを考慮してくれないので、Analogの出力が正しい時間を示すためには、年に2回サマータイムによる変更を行なう必要があります。

ログファイル用のディレクトリは、簡単な位置に変更してください。デフォルトのシステムインストールでは、(システムドライブはC、最初のCD-ROMはD、最初のデータディスクはEとなっています)、私は常にログファイルを E:\LogFiles にし、このフォルダをNTFS圧縮しています。というのもログファイルは、比較的圧縮率がよいからです。

「拡張プロパティ」タブをクリックしてください。

この画面の編集

「日付」と「時間」のチェックボックスがチェックされているのを確認してください。インストールを簡単にするために、私はすべての「拡張プロパティ」チェックボックスをチェックしてしまいます。多分含める必要のない(たとえば、ポート番号80しか使わない「サーバポート番号」とか)いくつかの特殊な項目もありますが、余計な項目を加えてもログファイルの大きさはそれほど変わりません。

代表的なサーバのインストールでは、「Process Accounting」のチェックボックスをチェックしないでください。現時点では、Analogがそれらの項目を正しく処理できるとは信じられません。

以下の項目がチェックされているか確かめてください。

  • 日付
  • 時間
  • クライアントIPアドレス
  • ユーザ名
  • サーバー名
  • サーバーIPアドレス
  • メソッド
  • URI Stem
  • URIクエリ
  • プロトコルの状態
  • 送信バイト数
  • 受信バイト数
  • 所要時間
  • ユーザエージェント
  • 履歴
  • クッキー

注意:W3C 拡張ログファイル形式を採用することにより、あなたが使用するAnalog.CFGファイルは、LOGFORMATコマンドによる設定が必要なくなったはずです。

Analogを使用する1つのWebサイトの設定

Analogを使用する1つのWebサイトに対する環境設定は、全体の環境設定と同じようにできます。図6-3で環境設定したいWebサイト(この場合、「既定のWebサイト」)を右クリックしてプロパティをクリックし、「既定のWebサイトのプロパティ」ウィンドウを開いてください。

上記に書いたステップにしたがって、ログファイルに対するアクティブログ形式と拡張プロパティの設定を行なってください。

IIS用Analog環境設定ファイル

私が使う基本的なanalog.cfgファイルは、IISを考慮して少し修正してあります。IISのGMT標準時間を使用したログ採取に対応して、LOGTIMEOFFSETコマンド群(これらは10月と4月に変更する必要があります)を、そしてホスト名の解決用にDNSコマンドをつけ加えました。また、エクスチェンジのWebアクセスとフロントページ用の特殊なファイルやディレクトリを削除しました。以下で私が追加した部分は、赤の文字で書いてあります。

# analog 5.1 用の環境設定ファイル
# 参照:http://www.analog.cx/
#
# Here are a couple of configuration commands to get you started. Add any more
# you like from the Readme.
#
# Lines starting with # are comments.
#
# There is a much more extensive configuration file in examples/big.cfg
#
# If you need a LOGFORMAT command (most people don't -- try it without first!),
# it must go here, above the LOGFILE commands.
#LOGFILE logfile.log

#CST (Winter)
#LOGTIMEOFFSET -360
#CDT (Summer)
LOGTIMEOFFSET -300

LOGFILE E:\LogFiles\W3SVC1\ex*.log 

HOSTNAME "ChristopherLewis.com"
HOSTURL http://www.ChristopherLewis.com/

# UNCOMPRESS *.gz,*.Z "gzip -cd"
BROWOUTPUTALIAS IWENG AOL
SUBBROW */*
SUBTYPE *.gz,*.Z

LANGUAGE US-ENGLISH

# OSCHARTEXPAND Windows
# Add whichever of these types of pages you have on your server, or others.
# PAGEINCLUDE *.shtml
# PAGEINCLUDE *.asp
# PAGEINCLUDE *.jsp
# PAGEINCLUDE *.cfm
# PAGEINCLUDE *.pl
# PAGEINCLUDE *.php
SEARCHENGINE http://*altavista.*/* q
SEARCHENGINE http://*yahoo.*/* p
SEARCHENGINE http://*google.*/* q
SEARCHENGINE http://*lycos.*/* query
SEARCHENGINE http://*aol.*/* query
SEARCHENGINE http://*excite.*/* search
SEARCHENGINE http://*go2net.*/* general
SEARCHENGINE http://*metacrawler.*/* general
SEARCHENGINE http://*msn.*/* MT
SEARCHENGINE http://*hotbot.com/* MT
SEARCHENGINE http://*netscape.*/* search
SEARCHENGINE http://*looksmart.*/* key
SEARCHENGINE http://*infoseek.*/* qt
SEARCHENGINE http://*webcrawler.*/* search,searchText
SEARCHENGINE http://*goto.*/* Keywords
SEARCHENGINE http://*snap.*/* keyword
SEARCHENGINE http://*dogpile.*/* q
SEARCHENGINE http://*askjeeves.*/* ask
SEARCHENGINE http://*ask.*/* ask
SEARCHENGINE http://*aj.*/* ask
SEARCHENGINE http://*directhit.*/* qry
SEARCHENGINE http://*alltheweb.*/* query
SEARCHENGINE http://*northernlight.*/* qr
SEARCHENGINE http://*nlsearch.*/* qr
SEARCHENGINE http://*dmoz.*/* search
SEARCHENGINE http://*newhoo.*/* search
SEARCHENGINE http://*netfind.*/* query,search,s
SEARCHENGINE http://*/netfind* query
SEARCHENGINE http://*/pursuit query
ROBOTINCLUDE REGEXPI:robot
ROBOTINCLUDE REGEXPI:spider
ROBOTINCLUDE REGEXPI:crawler
ROBOTINCLUDE Googlebot*
ROBOTINCLUDE Infoseek*
ROBOTINCLUDE Scooter*
ROBOTINCLUDE Slurp*
ROBOTINCLUDE Ultraseek*
TYPEALIAS .html ".html [Hypertext Markup Language]"
TYPEALIAS .htm ".htm [Hypertext Markup Language]"
TYPEALIAS .shtml ".shtml [Server-parsed HTML]"
TYPEALIAS .ps ".ps [PostScript]"
TYPEALIAS .gz ".gz [Gzip compressed files]"
TYPEALIAS .tar.gz ".tar.gz [Compressed archives]"
TYPEALIAS .jpg ".jpg [JPEG graphics]"
TYPEALIAS .jpeg ".jpeg [JPEG graphics]"
TYPEALIAS .gif ".gif [GIF graphics]"
TYPEALIAS .png ".png [PNG graphics]"
TYPEALIAS .txt ".txt [Plain text]"
TYPEALIAS .cgi ".cgi [CGI scripts]"
TYPEALIAS .pl ".pl [Perl scripts]"
TYPEALIAS .css ".css [Cascading Style Sheets]"
TYPEALIAS .class ".class [Java class files]"
TYPEALIAS .pdf ".pdf [Adobe Portable Document Format]"
TYPEALIAS .zip ".zip [Zip archives]"
TYPEALIAS .hqx ".hqx [Macintosh BinHex files]"
TYPEALIAS .exe ".exe [Executables]"
TYPEALIAS .wav ".wav [WAV sound files]"
TYPEALIAS .avi ".avi [AVI movies]"
TYPEALIAS .arc ".arc [Compressed archives]"
TYPEALIAS .mid ".mid [MIDI sound files]"
TYPEALIAS .mp3 ".mp3 [MP3 sound files]"
TYPEALIAS .doc ".doc [Microsoft Word document]"
TYPEALIAS .rtf ".rtf [Rich Text Format]"
TYPEALIAS .mov ".mov [Quick Time movie]"
TYPEALIAS .mpg ".mpg [MPEG movie]"
TYPEALIAS .mpeg ".mpeg [MPEG movie]"
TYPEALIAS .asp ".asp [Active Server Pages]"
TYPEALIAS .jsp ".jsp [Java Server Pages]"
TYPEALIAS .cfm ".cfm [Cold Fusion]"
TYPEALIAS .php ".php [PHP]"
TYPEALIAS .js ".js [JavaScript code]"

#DNS 関連
DNSFILE dnscache
DNS WRITE

#Exchange の除外
FILEEXCLUDE /Exchange
FILEEXCLUDE /Exchange/*

#Front Page 関連の除外
FILEEXCLUDE /_vti_bin/*
FILEEXCLUDE /_derived/*
FILEEXCLUDE /_themes/*
FILEEXCLUDE /_vti_inf.html

#日別レポート用の最低リクエスト数... これらは、月別レポート用の Analog_Run.vbs によりされます。
REQFLOOR 1r
ORGFLOOR 1r
REFFLOOR 1r
REFSITEFLOOR 1r
HOSTFLOOR 1r

結論

この記事がAnalogを使うえでIISの設定に役立つよう切に望みます。日別、週別、そして月別レポートを出力するVBScriptに関しては、私のWebサイト( HTTP://www.ChristopherLewis.com )をご覧ください。


Hot-Toの索引に戻る