1秒で10万行を処理するフリーの超高速なログ解析ソフト「Visitors」 - GIGAZINE
そんなに速かったかな。もう少しかかった気がする。
実際、5385693 lines processed in 148 seconds 4590587 lines processed in 126 secondsだった。
Visitorsの難点は解析時にログファイルそのものが必要になること。前回の解析結果を使ってくれない。このあたりはawstatsの方が使い勝手がいい。
下記のcron用スクリプトを以前書いたのだけど、これだと空のファイルしか生成されないorz原因が判明。visotorsは/usr/local/bin/に置いていたのだけれど、PATHに入っていなかった…。と言うわけで、cronで動かすスクリプト内ではフルパスを指定した方がよい。
このスクリプトを手動で実行すればちゃんと動くのに…。
cron.weekly/visitors
#!/bin/sh #zcat /var/log/httpd/access_log.*.gz zcat /var/log/httpd/access_log.*.gz \ | /usr/local/bin/visitors - -A -m 30 -o html --trails -P http://www.example.jp \ > /home/htdocs/logs/`date '+%Y%m'`.html & zcat /var/log/httpd/access_log.*.gz \ | /usr/local/bin/visitors - -P http://www.example.jp -V | /usr/bin/dot -Tpng \ > /home/htdocs/logs/`date '+%Y%m'`.png &
cron.monthly/visitors
#!/bin/sh zcat /home/logs/access_log.*.gz | gzip -c \ > /home/logs/access_log_monthly.`date -d '1 month ago' '+%Y%m'`.gz zcat /home/logs/access_log_monthly.`date -d '1 month ago' '+%Y%m'`.gz \ | /usr/local/bin/visitors - -A -m 30 -o html --trails -P http://www.example.jp \ > /home/htdocs/logs/`date -d '1 month ago' '+%Y%m'`.html #zcat /var/log/httpd/access_log.*.gz | /usr/local/bin/visitors - -P http://www.example.jp -V | /usr/bin/dot -Tpng > /home/htdocs/logs/`date -d '1 month ago' '+%Y%m'`.png zcat /home/logs/access_log_monthly.`date -d '1 month ago' '+%Y%m'`.gz \ | /usr/local/bin/visitors - -P http://www.example.jp -V | dot -Tpng \ > /home/htdocs/logs/`date -d '1 month ago' '+%Y%m'`.png mv -f /home/htdocs/logs/`date -d '1 month 1 year ago' '+%Y%m'`.* /home/htdocs/logs/old