読者です 読者をやめる 読者になる 読者になる

Squidのログ解析ツール「LightSquid」をインストールする

Linux

f:id:tydk27:20150409223947j:plain

LightSquidはSquidのログ解析ツールですが、最終更新日時が6年前というレガシーなアレでもあります。
トラフィック量が知りたいとか、とにかく軽ければおkとかでお探しの方には十分なツールだと思われます。

①ダウンロード->解凍->ドキュメントルートに移動してパーミッションや所有者等を適宜変更
# wget http://downloads.sourceforge.net/project/lightsquid/lightsquid/1.8/lightsquid-1.8.tgz
# tar zxvf lightsquid-1.8.tgz

# cp -R ./lightsquid-1.8/. /var/www/html/hoge/piyo

# cd /var/www/html/hoge/piyo

# chmod +x *.cgi
# chmod +x *.pl
# chown -R apache:apache *
httpd.confに追記あんどApache再起動
# vi /etc/httpd/conf/httpd.conf

<Directory "/var/www/html/hoge/piyo">
   AddHandler cgi-script .cgi
   AllowOverride All
</Directory>

# /etc/init.d/httpd restart
③lightsquid.cfgの編集(基本はデフォルトでおk)
# vi lightsquid.cfg

パスを適宜変更
$cfgpath             ="/var/www/html/hoge/piyo";
$tplpath             ="/var/www/html/hoge/piyo/tpl";
$langpath            ="/var/www/html/hoge/piyo/lang";
$reportpath          ="/var/www/html/hoge/piyo/report";
$logpath             ="/var/log/squid";
$ip2namepath         ="/var/www/html/hoge/piyo/ip2name";

環境によっては、0に設定すると「アクセスログのフォーマットとか、なんかよくわからんけど違くね?」と怒られる
$squidlogtype        = 1;

グラフを生成するなら1を指定
$graphreport         = 1;

グラフ縦軸のトラフィック最大値を決める(0.05*(...)だと50mb、1.05*(...)だと1Gbといった感じ)
$graphmaxuser=0.25*(1024*1024*1024);
$graphmaxall =1.05*(1024*1024*1024);
④コンフィグが正しいか、Perlモジュールが存在するか等をチェック
# ./check-setup.pl
LightSquid Config Checker, (c) 2005-9 Sergey Erokhin GNU GPL

LogPath   : /var/log/squid
reportpath: /var/www/html/hoge/piyo/report
Lang      : /var/www/html/hoge/piyo/lang/eng
Template  : /var/www/html/hoge/piyo/tpl/base
Ip2Name   : /var/www/html/hoge/piyo/ip2name/ip2name.simple

all check passed, now try access to cgi part in browser
⑤parserを叩く
# ./lightparser.pl
⑥Cronで1時間に1回更新(10分未満の間隔でCron実行するのはやめれ、と公式より)
# crontab -e
0 * * * * /var/www/html/hoge/piyo/lightparser.pl