「SARG」の設定

「SARG」を用いて「Squid」のログ解析を行います。
なお、「Apache」の設定「Squid」の設定は完了済みとします。

「SARG」のインストール

「Fedora Core」用のバイナリも用意されていますが、ここではソースからインストールします。

[root@Fedora ~]# mkdir /usr/local/src/sarg <= 作業用ディレクトリの作成
[root@Fedora ~]# chmod 777 /usr/local/src/sarg <= 作業用ディレクトリのパーミッション変更
[root@Fedora ~]# exit <= 一般ユーザになる
[kaz@Fedora ~]$ cd /usr/local/src/sarg <= 作業用ディレクトリへ移動
[kaz@Fedora sarg]$ wget http://jaist.dl.sourceforge.net/sourceforge/sarg/sarg-2.2.2.tar.gz
 <= 「SARG」のソースをダウンロード
[kaz@Fedora sarg]$ tar xzf sarg-2.2.2.tar.gz <= ダウンロードしたファイルの展開
[kaz@Fedora sarg]$ cd sarg-2.2.2 <= 展開したディレクトリに移動

このままコンパイルすることも出来ますが、その場合ログのレポートを日本語で表示すると文字化けを起こしてしまいますので、 ソースファイルを編集します。

[root@Fedora sarg-2.2.2]$ vi /usr/local/src/sarg/sarg-2.2.2/charset.c
void ccharset()
{
   if(strcmp(CharSet,"Latin2") == 0) strcpy(CharSet,"ISO-8859-2");
   else if(strcmp(CharSet,"Latin3") == 0) strcpy(CharSet,"ISO-8859-3");

   else if(strcmp(CharSet,"Japan") == 0) strcpy(CharSet,"EUC-JP"); <= 追加
   return;
}

上記の編集終了後、インストールします。

[kaz@Fedora sarg-2.2.2]$ ./configure 2>&1 | tee configure.log
[kaz@Fedora sarg-2.2.2]$ make 2>&1 | tee make.log <= コンパイル
[kaz@Fedora sarg-2.2.2]$ su <= スーパーユーザになる
パスワード(P): <= パスワードの入力
[root@Fedora sarg-2.2.2]# make install 2>&1 | tee make-install.log <= インストール
「SARG」の設定
[root@Fedora ~]# vi /usr/local/sarg/sarg.conf <= 設定ファイルの作成
#language English
↓
language Japanese <= 変更

#access_log /usr/local/squid/var/logs/access.log
↓
access_log /var/log/squid/access.log <= ログファイルを指定

#output_dir /var/www/html/squid-reports
↓
output_dir /var/www/squid-reports <= 「SARG」の出力先を指定

#charset Latin1
↓
charset Japan <= charsetを指定

ディレクトリの作成

「SARG」が出力するディレクトリを作成します。

[root@Fedora ~]# mkdir /var/www/squid-reports

日本語ファイルの設定

「SARG」の日本語の設定ファイルがおかしいので修正します。

[root@Fedora ~]# vi /usr/local/sarg/languages/Japanese <= 設定ファイルの編集
"Abuse レポート" <= 削除

"Making Abuse report" <= 削除

"Squid Abuse Report" <= 削除

"Authentication failures"
"拒否" <= 追加
"トップサイト" <= 追加
"SQUIDGUARD"

"Sarg log format"
"ダウンロード" <= 追加
"Graphic"

"Topuser" <= 削除
「Apache」の設定

「SARG」が出力したディレクトリにアクセス出来るように「Apache」を設定します。

[root@Fedora ~]# vi /etc/httpd/conf.d/sarg.conf <= 設定ファイルの作成
Alias /squid-reports/ "/var/www/squid-reports/"
<Directory "/var/www/squid-reports/">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

「Apache」を再起動し、設定を反映させます。

[root@Fedora ~]# /etc/rc.d/init.d/httpd restart
「SARG」の実行

「Fedora Core」はデフォルトでは文字コードがUTF-8ですので、EUC-JPに変更してから実行します。

[root@Fedora ~]# export LANG=ja_JP.EUC-JP
[root@Fedora ~]# sarg

http://サーバのIPアドレス/squid-reports/
でアクセスできれば問題ありません。

「SARG」の自動実行

cronに登録して自動的に実行するようにします。

[root@Fedora ~]# vi sarg.sh <= スクリプトファイルの新規作成
#!/bin/sh

LANG=ja_JP.EUC-JP

/usr/bin/sarg > /dev/null 2>&1


[root@Fedora ~]# chmod 755 sarg.sh <= スクリプトファイルに実行権限を付加
[root@Fedora ~]# crontab -e <= cronの編集
00 00 * * * /root/sarg.sh <= 追加
▲ページのトップへ