- 1. 概要
- 2. 設定
- 3. インストール
- 4. apache 定義ファイルの編集
- 5. awstats.mail.conf の編集
- 6. 解析ファイルの作成
1. 概要
「ウェブサーバ apache24 - ログ解析ツール」で紹介している「awstats」で「qmail」のログを解析することもできます。
上記の記述と重複する箇所がありますがご容赦ください。
2. 設定
その前に。
ログの出力先は、デフォルトでは。
/var/log/maillog
になっており。
毎日、ローテーション、圧縮して、1週間分保存するので。
maillog.0.bz2
maillog.1.bz2
maillog.2.bz2
maillog.3.bz2
maillog.4.bz2
maillog.5.bz2
maillog.6.bz2
となりますが。
他のアプリケーションでのログも増えてくるので、サブディレクトリを作成して、そちらへ保存したい場合は。
mkdir -pv /var/log/mail
touch /var/log/mail/maillog
vi /etc/syslog.conf
mail.info /var/log/maillog
下記へ変更します。
mail.* /var/log/mail/maillog
vi /etc/newsyslog.conf
/var/log/maillog 640 7 * @T00 JC
を。
/var/log/mail/maillog 640 31 * @T00 B
と書き換えて、再起動します。
これで。
/var/log/mail
配下に。
maillog
maillog.0
maillog.1
と、圧縮なしで、31日分保持されるようになります。
3. インストール
cd /usr/ports/www/awstats
make config
オプションは、デフォルトのままにしています。
cd /usr/ports/www/awstats/
make NO_DIALOG=yes
make install
4. apache 定義ファイルの編集
正常にインストールできていれば、ウェブサーバのドキュメントルートが「/usr/local/www」とすれば
/usr/local/www/awstats
というディレクトリが作成されているはずです。
「apache」の定義ファイルを作成してアクセスできるようにします。
定義ファイルを仮に「/usr/local/etc/apache24/Includes/awstats.conf」として、編集します。
vi /usr/local/etc/apache24/Includes/awstats.conf
Alias /awstatsclasses "/usr/local/www/awstats/classes/"
Alias /awstatscss "/usr/local/www/awstats/css/"
Alias /awstatsicons "/usr/local/www/awstats/icons/"
Alias /awstats "/usr/local/www/awstats/cgi-bin/"
<Directory "/usr/local/www/awstats/">
DirectoryIndex awstats.pl
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all ← all でなく IPアドレスは絞るべきです
</Directory>
5. awstats.mail.conf の編集
「/usr/local/www/awstats/cgi-bin/」に「awstats.model.conf」というコンフィグレーションファイルのサンプルがあります。
メール用のコンフィグレーションファイル「awstats.mail.conf」にコピーして編集します。
cp /usr/local/www/awstats/cgi-bin/awstats.model.conf /usr/local/www/awstats/cgi-bin/awstats.mail.conf
編集する箇所は以下の通りです。
(編集する箇所がやたらと多いので、行番号を省略し、編集する箇所のみ抜粋しておりますのでご注意ください)
ログのディレクトリとファイル名は環境に合わせてください
LogFile="perl /usr/local/www/awstats/tools/maillogconvert.pl standard < /var/log/maillog|"
ログのフォーマット指定です
LogFormat="%time2 %email %email_r %host %host_r %method %url %code %bytesd"
ログタイプがメールということです
LogType=M
DirData=出力結果を配置するディレクトリを記述します
DirCgi=CGI を配置するディレクトリを記述します
SiteDomain=ドメイン名を記述します
WEBログ用なので OFF にする箇所です
LevelForBrowsersDetection=0
LevelForOSDetection=0
LevelForRefererAnalyze=0
LevelForRobotsDetection=0
LevelForSearchEnginesDetection=0
LevelForKeywordsDetection=0
メールログ用にカスタマイズする箇所です
ShowSummary=HB
ShowMonthStats=HB
ShowDaysOfMonthStats=HB
ShowDaysOfWeekStats=HB
ShowHoursStats=HB
ShowDomainsStats=0
ShowHostsStats=HB
ShowRobotsStats=0
ShowEMailSenders=HBML
ShowEMailReceivers=HBML
再びウェブログ用なので OFF にする箇所です
ShowSessionsStats=0
ShowPagesStats=0
ShowFileTypesStats=0
ShowDownloadsStats=0
ShowOSStats=0
ShowBrowsersStats=0
ShowOriginStats=0
ShowKeyphrasesStats=0
ShowKeywordsStats=0
ShowHTTPErrorsStats=0
6. 解析ファイルの作成
ログファイル連結して準備が整ったので、解析ファイルを出力します。
/usr/bin/perl /usr/local/www/awstats/cgi-bin/awstats.pl -update -config=awstats.mail.conf
と1行で記述して出力します。
結果がうまく作成されれば
http://ドメイン名/awstats/awstats.pl?config=awstats.mail.conf
にアクセスすることでログの解析結果を見ることができるようになります。
解析ファイル出力のコマンドを crontab に記述することで、定期的に解析結果を更新することができるようになります。
|