webalizer(ログを見やすく)

ログを確認するのはtextで眺めるのが基本だけど、なかなかわかりにくい。
よく眺めていると見方がわかってくるけど・・・慣れるには時間がかかるよね。
だから、解析ってほどじゃないけど、ログを見やすくしましょうってこと。

このログ解析(?)ソフトには何種類かあるようだけど、
とりあえず玄箱で動きそうなwebalizerを導入してみまそう。
「ログ解析(?)ソフト」
webalizerのほかにも何種類かあるけど、他のは行方不明になっていたり、
perlで動くものだったりと、玄箱で使うにはちょっと・・・的だったりする。

まぁ、機能は少ないですが簡単に動くwebalizerってことですよ(゚ω゚)b

やること一覧
	・webalizerのインストール最低限の設定

関連ページ
	・apache2wget



webalizerのインストール

webalizerのインストール
ソースファイルと日本語対応パッチを入手

	$ wget ftp://ftp.mrunix.net/pub/webalizer/webalizer-2.01-10-src.tgz
	$ wget http://tyche.pu-toyama.ac.jp/~a-urasim/webalizer/webalizer-a-urasim_2.patch
		注:開発が終了しているのでURLを記載
	$ ls
		┃webalizer-2.01-10-src.tgz
		┃webalizer-a-urasim_2.patch
例のあれ
	$ tar xvfz webalizer-2.01-10-src.tgz
	$ patch -p0 <webalizer-a-urasim_2.patch
	$ cd webalizer-2.01-10
	$ ./configure --prefix=/opt/webalizer \
	--with-language=japanese --with-etcdir=/opt/webalizer/etc \
	[--with-dblib=/usr/lib --with-db=/usr/include/gdbm]
		注:エラーが出現する場合、[ ]のオプションを試す
		注:それでもダメならBerkeley DBをインストール
		  手順はpostfix#HGの事前準備を参照
		注:DNSの逆引きを有効にしていません(私は逆引きをapacheで行っているため)
	$ make
インストール
	# mkdir -p /opt/webalizer/bin
	# mkdir -p /opt/webalizer/man/man1
	# mkdir -p /opt/webalizer/etc
	# make install
		注:make installでディレクトリを作ってくれないのであらかじめ作っておく
インストールされるもの
	/opt/webalizer/*
おまじない
	# strip -p /opt/webalizer/bin/webalizer
「webalizer」
このwebalizerは何をしてくれるのか?
あぱっちのログを項目ごとに分解/整理してhtmlのリストにしてくれるだけです。
単純明快。
他に面倒臭いことはしていません。

あとは見るほうが自分の見やすいように設定を変更するってことです。

最低限の設定

設定ファイルを作る

	# cp /opt/webalizer/etc/webalizer.conf.sample /opt/webalizer/etc/webalizer.conf
開発終了時から検索エンジンの数が増えたり、検索クエリ文字が変更があったりしているので・・・
	# vi /opt/webalizer/etc/webalizer.conf
		(削除)
		┃SearchEngine	yahoo.com	p=
		┃SearchEngine	altavista.com	q=
		┃SearchEngine	google.com	q=
		┃SearchEngine	eureka.com	q=
		┃SearchEngine	lycos.com	query=
		┃SearchEngine	hotbot.com	MT=
		┃SearchEngine	msn.com		MT=
		┃SearchEngine	infoseek.com	qt=
		┃SearchEngine	webcrawler	searchText=
		┃SearchEngine	excite		search=
		┃SearchEngine	netscape.com	search=
		┃SearchEngine	mamma.com	query=
		┃SearchEngine	alltheweb.com	query=
		┃SearchEngine	northernlight.com  qr=
		(追加)
		┃SearchEngine	a9.com			q=
		┃SearchEngine	alltheweb.com		q=
		┃SearchEngine	altavista.com		q=
		┃SearchEngine	aol.com			query=
		┃SearchEngine	ask.jp			q=
		┃SearchEngine	biglobe.ne.jp		q=
		┃SearchEngine	cache.yahoofs.jp	w=
		┃SearchEngine	eureka.com		q=
		┃SearchEngine	excite.			search=
		┃SearchEngine	fresheye.com		kw=
		┃SearchEngine	goo.ne.jp		MT=
		┃SearchEngine	google.			q=
		┃SearchEngine	hotbot.com		MT=
		┃SearchEngine	infoseek.co.jp		qt=
		┃SearchEngine	jword.jp		name=
		┃SearchEngine	lycos.com		query=
		┃SearchEngine	mamma.com		query=
		┃SearchEngine	msn.			q=
		┃SearchEngine	naver.			query=
		┃SearchEngine	netscape.com		search=
		┃SearchEngine	nifty.com		Text=
		┃SearchEngine	northernlight.com	qr=
		┃SearchEngine	vivisimo.com		query=
		┃SearchEngine	webcrawler.		searchText=
		┃SearchEngine	yahoo.			p=
まぁ、面倒なのでパッチを利用するなら無保証ですが・・・
webalizer.conf修正パッチ(webalizer.conf.tar.gz) md5sum crc32:44794B68

定期更新の設定:定期的にログ解析処理を行うようにする。
出力ディレクトリの作成(例)
	# mkdir -p /home/www/webalizer/mywebsite1
	# mkdir -p /home/www/webalizer/mywebsite2
方法1:直接コマンドを記載する
ログローテートの直前にログを処理するようにする
	# vi /etc/logrotate.d/httpd
		(追加)
		┃    prerotate
		┃        /opt/webalizer/bin/webalizer -q -c /opt/webalizer/etc/webalizer.conf \
		┃        	/opt/apache2/logs/mywebsite1-access_log \
		┃        	-o /home/www/webalizer/mywebsite1 -n mywebsite1
		┃        /opt/webalizer/bin/webalizer -q  -c /opt/webalizer/etc/webalizer.conf \
		┃        	/opt/apache2/logs/mywebsite2-access_log \
		┃        	-o /home/www/webalizer/mywebsite2 -n mywebsite2
		┃    endscript
方法2:スクリプト作成して定期的に実行
	# crontab -e
		(追加)
		┃00   *   *   *   *  /root/webalizer.sh

	# vi /etc/logrotate.d/httpd
		(追加)
		┃    prerotate
		┃        /root/webalizer.sh
		┃    endscript
			注:どちらを使うかはスクリプトの処理方法(書き方)による
/home/www/webalizer/をwww鯖で見れるようにする。
注意:認証/アクセス制限をかけ、見れる人を制限する(強く推奨)
「スクリプト」
例によって例のごとく、スクリプト:webalizer.shはこのページを作ったときには非公開な訳です。

まぁ、気が向いたら公開すると思いますが・・・
必要な人いるのかなぁ?
いるなら、掲示板にカキコをしていただけると速やかに公開されると思います。
# スクリプトの公開って面倒臭いんだよねぇ・・・
# 説明とかいろいろ書かなきゃいけないし(を


戻るなら押せ!