逆引き高速化(DNSTRAN)

awstatsの逆引きがあまりにも遅く、負荷が高いのではやくできないかと悩んでいたころ(2005/04頃)
DNSTRANという逆引き専用のソフトを見つけて使い始めた。


入手はここより
http://www.summary.net/soft/dnstran.html

$ wget http://www.summary.net/soft/dns-x86.tar.gz
$ tar zxf dns-x86.tar.gz
$ sudo mv dnstran1.5.2 /usr/local/
$ sudo vi /usr/local/dnstran1.5.2/dnstran.cfg

translate no→yesに変更


ゾルブ用shell script作成

#/bin/sh

gunzip /home/squidlog/access.log.1.gz

cd /usr/local/dnstran1.5.2
./dnstran /home/squidlog/access.log.1

mv /home/squidlog/access.log.1.gz /home/squidlog/`/bin/date "+%Y%m%d"`.gz
rm /home/squidlog/access.log.1
exit


squidアクセスログを/home/squidlog/に溜め込んでいるのでそれを逆引き
/home/squid/20061214.gz ができるので
awstats.ドメイン.conf設定ファイルにそれを読み込ませる

LogFile="gzip -d < /home/squidlog/%YYYY%MM%DD.gz |"

に変更


squidのログをとってくるperl script

#!/usr/bin/perl

use Net::FTP;
$ftp = Net::FTP->new("ftp.example.com");
$ftp->login("id",'passwd'); #id,passwordは変更
$ftp->cwd("/var/log/squid");
$ftp->get("access.log.1.gz");
$ftp->quit;
exit(0);


DNSTRAN参考
http://www.jp.analog.cx/helper/dnstran.html
http://lightly.plala.jp/memo2/59.html