Hatena::ブログ(Diary)

”improve it!” このページをアンテナに追加 RSSフィード

2007年3月06日 火曜日

1秒で10万行を処理するフリーの超高速なログ解析ソフト「Visitors」 - GIGAZINE

| 20:39 | 1秒で10万行を処理するフリーの超高速なログ解析ソフト「Visitors」 - GIGAZINEを含むブックマーク 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

スティッキービット、SUID、SGID

| 20:44 | スティッキービット、SUID、SGIDを含むブックマーク スティッキービット、SUID、SGIDのブックマークコメント

no titleは別にたいした記事でもなかったけど、404 Blog Not Found:unix - permissionあれこれはよくまとまっていてわかりやすい。さすが。

ディレクトリにSGIDを設定するのが便利。ftpでWebの公開ディレクトリに複数ユーザーにアップロードしてもらう必要があるときとか。

visitorsvisitors 2007/03/18 00:27 CPUの差が時間の差になると思うよ

uunfouunfo 2007/04/05 14:39 まあ、それはそうなんですけど2〜3倍にもなるものなんでしょうか?
一応 Pentium(R) 4 CPU 3.00GHz のLinuxマシンなんですが。

トラックバック - http://d.hatena.ne.jp/uunfo/20070306
Connection: close