*Webalizerのインストール [#s96be263]
# apt-get install webalizer
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下の追加パッケージがインストールされます:
TrueType-base TrueType-kochi-subst ftdumps mktcapdir
以下のパッケージが新たにインストールされます:
TrueType-base TrueType-kochi-subst ftdumps mktcapdir webalizer
アップグレード: 0 個, 新規インストール: 5 個, 削除: 0 個, 保留: 1 個
10.5MB のアーカイブを取得する必要があります。
展開後に 18.2MB のディスク容量が追加消費されます。
続行しますか? [Y/n]y
取得:1 http://updates.vinelinux.org 4.2/i386/main ftdumps 0.1.1-0vl3 [28.7kB]
取得:2 http://updates.vinelinux.org 4.2/i386/main mktcapdir 0.5.4-0vl2 [13.9kB]
取得:3 http://updates.vinelinux.org 4.2/i386/main TrueType-base 4.4.1-0vl1 [11.3kB]
取得:4 http://updates.vinelinux.org 4.2/i386/plus TrueType-kochi-subst 4.6-0vl3 [10.3MB]
取得:5 http://updates.vinelinux.org 4.2/i386/plus webalizer 1:2.01.10-0vl3 [141kB]
10.5MB を 6s 秒で取得しました (1552kB/s)
変更を適用しています...
準備中... ########################################### [100%]
1:ftdumps ########################################### [ 20%]
2:mktcapdir ########################################### [ 40%]
3:TrueType-base ########################################### [ 60%]
4:TrueType-kochi-subst ########################################### [ 80%]
5:webalizer ########################################### [100%]
完了
設定ファイルの変更。
# vi /etc/webalizer.conf
>
Apache2のログファイルの場所
LogFile /var/log/httpd/access_log.1
↓
LogFile /var/log/apache2/access_log
解析結果の出力先ディレクトリ
OutputDir /home/httpd/html/webalizer
タイトルに表示されるホストネーム
#HostName localhost
↓
HostName kayanomori.net
解析するファイルタイプにPHPを追加
PageType php
解析結果にログインユーザーは表示したくないので0に
#TopUsers 20
TopUsers 0
解析結果から隠したいサイト
#HideSite localhost
↓
HideSite localhost
HideSite *kayanomori.net
解析結果から隠したいリファラー
HideReferrer kayanomori.net/
自サイトからのリファラーは隠す
#HideReferrer Direct Request
↓
HideReferrer Direct Request
解析結果から隠したいファイルタイプ
HideURL *.css
HideURL *.js
HideURL *.ico
実行してみる。
# webalizer
Webalizer V2.01-10 (Linux 2.6.16-76.39vl4) Japanese(EUC)
ログファイル ― /var/log/apache2/access_log (clf)
作成ディレクトリ: /home/httpd/html/webalizer
ホスト名 ― 'vmx.kayanomori.net'
ヒストリファイルが見つかりません...
以前の実行データが見つかりません...
現在の実行データを保存しています... [11/27/2008 23:07:20]
月別レポート作成 ― 2008年 11月
総合レポートの作成
ヒストリ情報の保存...
299 レコードありました. 処理時間: 0.23 秒
結果を見るには、http://IP_or_HOST/webalizer/をブラウザで開く。
#ref(webalizer.png,nolink)
*検索文字列の文字化け対策 [#hfcaf0ab]
検索文字列が文字化けしているので、文字コード変換スクリプトを作成し解析結果に対して実行する。
# vi /usr/local/bin/mojiconv
>
#!/usr/bin/perl
use Jcode;
open (IN ,$ARGV[0]);
while (<IN>){
$_ =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
Jcode::convert(\$_,euc);
print $_;
}
close (IN);
exit;
実行権限を与える。
# chmod 755 /usr/local/bin/mojiconv
試しに実行してみる。
# cd /home/httpd/html/webalizer/
# ls
ctry_usage_200510.png hourly_usage_200510.png usage_200510.html
ctry_usage_200511.png hourly_usage_200511.png usage_200511.html
daily_usage_200510.png index.html webalizer.current
daily_usage_200511.png usage.png webalizer.hist
# mojiconv usage_200511.html > test.html
test.htmlにアクセスしてみて文字化けが直っていたらOK。完全ではないがある程度解消しているはず。
もし、エラーが出て実行できない場合は、
# apt-get install perl-Jcode
をインストールする。
自動実行するためのスクリプトを作成。
# vi /usr/local/bin/weba.sh
>
#!/bin/sh
/usr/bin/webalizer > /dev/null
TMONTH=/home/httpd/html/webalizer/usage_20`date +%y%m`.html
LMONTH=/home/httpd/html/webalizer/usage_20`date --date '1 month ago' +%y%m`.html
/usr/local/bin/mojiconv $TMONTH > $TMONTH.temp
/usr/local/bin/mojiconv $LMONTH > $LMONTH.temp
mv -f $TMONTH.temp $TMONTH
mv -f $LMONTH.temp $LMONTH
今月と先月の結果に対してmojiconvする。
実行権限を与える。
# chmod 755 /usr/local/bin/weba.sh
実行してみる。
# /usr/local/bin/weba.sh
問題なければcronに登録。
# crontab -e
0 4,19 * * * /usr/local/bin/weba.sh
4:00と19:00に実行する例。
標準の設定だと毎週4:02にapacheのログファイルがローテイトされるのでその2分前の4:00に設定。
* コメント [#p2f7dbe2]
#comment
IP:192.168.0.9 TIME:"2008-11-28 (金) 22:43:12" REFERER:"http://kayanomori.net/memo/index.php?cmd=edit&page=VineLinux4.x%2F%A5%B5%A1%BC%A5%D0%B4%C9%CD%FD%2FWebalizer%A4%CE%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB" USER_AGENT:"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"