Webサーバのアクセスログの解析

最終更新日時:2007-04-05 15:09:47
自宅サーバへの道

せっかく Webサーバを立ち上げているので、どれくらいのアクセスがあったかを見たいと思います。
Webサーバへのアクセスの統計情報をWebサーバのアクセスログを解析して作成するというアプリケーションがいくつかあります。
ここでは、私が使ったことのあるAnalogとAWStatsを紹介しておきます。

Analog


Analogを使用することによって、以下のような統計情報が得られます。

・1日のアクセス数
・曜日ごとのアクセス数
・時間ごとのアクセス数
・ファイルごとのアクセス数および全体との割合
・アクセス元の統計
・リンク元(Referer)の統計

他にも様々な情報が出力可能です。
出力はHTML形式(他のいくつかの形式にも対応している)なので、Webで閲覧することが可能です。
AnalogはApacheのcombined形式のアクセスログに対応していますので、Apache側の設定変更はcombined形式で出力していれば不要です。
もし、特殊な形式で出力していてもAnalog側で設定可能ですので、たいていの出力形式には対応できるはずです。
Analogは設定項目が非常に多いので大変ですが、必要最低限の設定だけでも実行可能ではあるので、Webサーバを立ち上げている人は是非一度Analogを使ってみることをおすすめします。
ちなみに、私の場合は1日ごとにApacheのログを出力しているので、その後に前日分までのログをAnalogに解析させています。

AWStats


レポートの内容自体は、AWStatsの方が項目も多く、グラフィカルになっているので多機能と言ってよいかと思います。
Analogとの相違点は、

・AnalogはCで書かれているので、Perlで書かれているAWStatsよりも高速(解析項目にもよるかもしれませんが)
・Analogは指定したログファイルを解析した結果を毎回上書き。AWStatsは指定したログファイルを解析した結果を前回までの解析結果にマージ

はっきり言ってAnalogとAWStatsのどちらを使うのかは好みの問題ではないかと思います。
私は両方に解析させるようにしています。
AWStatsも私の場合は1日ごとにAWStatsに解析させています。

独自解析


AnalogやAWStatsでは物足りなくなってきたら自分で解析するプログラムを書いてみるのもよいかもしれません。
しばらくAnalogやAWStatsを使っていると、いろいろ不満な点が出てくるし、その不満な点を設定で回避できないことが多々出てきます。
ということで、結局、現在の私の場合、独自解析がメインでそれ以外にAnalogとAWStatsでも解析させているという状態で落ち着いています。
独自解析については、Apacheログの独自解析を参照。

お問い合わせは 掲示板 にて。