* Analogのインストール [#sc939bac]
アクセスカウンタのようにページ内に埋め込み、ログ収集を行なうものではなく、直接 Apache のアクセスログから、解析します。HTML 埋め込み型は、対象ページ数が増えすぎると、管理が大変です。そのため、もし Apache のログを直接閲覧できる環境であれば、直接ログ解析するタイプを利用した方が便利です。
- webalizer ([[参考1:http://www.jpring.net/webalizer/]]、[[参考2:http://www.jpring.net/jitaku/webalizer.html]])
- Analog ([[参考:http://www.miloweb.net/analog.html]])
なお、HTML 埋め込み型のアクセス解析には、下記スクリプト等があります。
- dopvSTAR*
** ダウンロード [#i78ade1f]
[[公式ミラーサイトのダウンロードページ:http://sunsite.sut.ac.jp/pub/archives/WWW/analog/download.html]]
上記サイトから Analog をダウンロードします。[[公式サイト:http://www.analog.cx]]は重いので、ミラーサイトを利用した方がいいです。今回はソースからビルドするため、analog-6.0.tar.gz をダウンロードしました。
$ tar zxvf analog-6.0.tar.gz
** ヘッダファイル編集 [#s98e6803]
必要な設定を、ヘッダファイル内に行ないます。
$ vi src/anlghead.h
#define LANGDIR "/usr/local/var/analog/lang/"
#define CONFIGDIR "/usr/local/etc/"
** make [#u305c775]
make を実行します。
$ make
** インストール [#f8682139]
コンフィグファイルの位置などは、ビルド時のヘッダファイルの内容により、決まっています。それに合わせて配置します。今回は、下記の内容を配置しました。※make install はありません
/usr/local/bin/analog
/usr/local/etc/analog.cfg
/usr/local/var/analog/lang
lang はディレクトリごと移動します。
** 設定ファイル [#m90aa053]
analog.cfg を編集することで、各種設定が変更できます。これらの内容は、ビルド時のヘッダファイルでも可能ですが、ここで行ないます。
LOGFILE /etc/httpd/logs/access_log # 解析対象ログ
OUTFILE /home/httpd/status/analog_report.html # 出力先ファイル
LANGUAGE JAPANESE # 出力言語
コマンドラインから、analog コマンドを実行します。あらかじめ指定した OUTFILE の場所に出力します。
# analog
** HTML による更新 [#n6dc63de]
(未了)lang ディレクトリから jpeform.html を HTTP アクセス可能な位置へ移動します。また、実行用スクリプトである anlgform.pl も、cgi 実行可能な場所に移動します。画像ディレクトリについても正しく設定しなくてはなりません。
** 警告 [#j34a33a8]
各レポート生成に関して Warning が出力される場合、そのレポートに関する情報が、もともと対象ログに欠けている可能性があります。
つまり、ドメイン名別の集計をしたい場合に、httpd.conf で HostnameLookups が On になっていなければ、集計のしようがないというわけです。
** 問題 [#sb3258c2]
そのままでは、検索語の日本語が URLエンコードされてしまいます。そこで、出力されたレポートファイルに対して、URLデコードを実施する必要があります。Perlなどで自作しても良いですが、フリーで公開されているスクリプトを利用しました。
[[ダウンロード先 @ Analog関連(Graffiti):http://www.inwonder.net/~dayan/pukiwiki/index.php?analog%B4%D8%CF%A2]]
ベータ版その2を使います。/usr/local/bin に置き、実行権限を与えます。Perlへのパスが正しいか確認して下さい。
# cp analogurldecode /usr/local/bin
# chmod 0755 analogurldecode
$ analogurldecode input.html > output.html
** 参考 [#uc55bb68]
- http://nekhet.ddo.jp/blog/4/item/868
- http://www.tokyo-kasei.ac.jp/~matsuki/analog/conf.html