ユーザ用ツール

サイト用ツール


linux:debiansarge:07.webdruid

07.WebdruidでWebアクセス解析

Webサーバーを立上げたら、アクセスログを詳しく見たくなります。 どのくらいの人がこのページを見に来ているのかわかれば、 ホームページの更新にも意欲がわいてきますね。

ということで、Apacheのアクセスログを取るためのツールを 導入することにしました。

FedoraCore3の頃に使用していたのは「Webalizer」というもので、 これは、Apacheのログファイルから、綺麗なグラフにして結果を 生成してくれます。

そこで、Debianでも「Webalizer」を導入しようと思い、 Debianでの導入方法についていろいろと調べていました。 ところが、いろいろと調べているうちに、

もっと面白そうな解析ツールが!!

今回はそちらを導入することにしました。

その解析ツールの名前は、「webdruid」

なんと、サイト内を訪問者がどのように移動したのかを 図にして、表示してくれます。

「Webalizser」のように単なるグラフだけではなくて、 各ページ間の訪問者の移動を矢印で結んだ図にして示して くれるので見ていて非常に面白い。

それでは、導入を開始しましょう。

まずは、解析ツール本体を導入します。 といってもいつもと同じapt-get。


# apt-get install webdruid
パッケージリストを読みこんでいます... 完了
依存関係ツリーを作成しています... 完了
以下の特別パッケージがインストールされます:
  libgd2-noxpm ttf-freefont
提案パッケージ:
  libgd-tools apache httpd graphviz
推奨パッケージ:
  x-ttcidfont-conf
以下のパッケージが新たにインストールされます:
  libgd2-noxpm ttf-freefont webdruid
アップグレード: 0 個、新規インストール: 3 個、削除: 0 個、保留: 0 個。
1698kB のアーカイブを取得する必要があります。
展開後に追加で 4764kB のディスク容量が消費されます。
続行しますか? [Y/n] Y
取得:1 ftp://ftp.jp.debian.org stable/main 
	libgd2-noxpm 2.0.33-1.1 [193kB]
取得:2 ftp://ftp.jp.debian.org stable/main 
	ttf-freefont 20031008-1.1 [1169kB]
取得:3 ftp://ftp.jp.debian.org stable/main 
	webdruid 0.5.4-2 [336kB]
1698kB を 21s で取得しました (77.7kB/s)
未選択パッケージ libgd2-noxpm を選択しています。
(データベースを読み込んでいます... 
現在 102897 個のファイルとディレクトリがインストールされています。)
(.../libgd2-noxpm_2.0.33-1.1_i386.deb から) 
	libgd2-noxpm を展開しています...
未選択パッケージ ttf-freefont を選択しています。
(.../ttf-freefont_20031008-1.1_all.deb から) 
	ttf-freefont を展開しています...
未選択パッケージ webdruid を選択しています。
(.../webdruid_0.5.4-2_i386.deb から) webdruid を展開しています...
libgd2-noxpm (2.0.33-1.1) を設定しています ...
ttf-freefont (20031008-1.1) を設定しています ...

webdruid (0.5.4-2) を設定しています ...

次に設定ファイルを変更しましょう。 「webdruid」の設定ファイルは、 /etc/webdruid/webdruid.conf です。

今回は、仮想サーバーで動作させている複数のWebサーバーのログ解析を させたいので、サーバー毎に設定ファイルを作ります。

つまり、1つのサーバーPCで、 サイト名 「www.aaa.xxx」 と サイト名 「www.bbb.yyy」 の 2つの仮想サーバーを運用しているとします。

まず、「www.aaa.xxx」用に、/etc/webdruid/webdruid.conf を webdruid_aaa.conf にコピーして、このファイルを www.aaa.xxx サイトの解析を行うwebdruidの設定ファイルにします。

www.bbb.yyy の設定ファイルは、上記の設定ファイルを作った後で、 webdruid_bbb.conf という名前にコピーして作成します。 ファイル内で aaa.xxx のドメインの指定部分を bbb.yyy に 変更すればOKです。

以上でとりあえずWebdruidは動作します。

コマンドライン上で、

# webdruid -c /etc/webdruid/webdruid_aaa.conf

としてみましょう。“-c” は、設定ファイルを指定する オプションです。 ( -c file = use configuration file 'file' ) 実行すると、設定ファイルで指定されたフォルダの中に index.html をはじめ幾つかの png ファイルができていれば とりあえずはOKです。(文字化けしてるかも知れませんが、 それは後で対策するのでいいです)

が、これだけではまだ訪問者の移動を 図式化する機能は動作しません。

webdruid.conf を見てみると、 図式化するためには、dotというプログラムがいるらしいです。 そして、dotというプログラムは、 graphvizというパッケージに入っています。 そこで、graphviz を早速インストールです。

# apt-get install graphviz
パッケージリストを読みこんでいます... 完了
依存関係ツリーを作成しています... 完了
以下の特別パッケージがインストールされます:
  tcl8.4 tk8.4
提案パッケージ:
  msttcorefonts graphviz-doc tclreadline
推奨パッケージ:
  xterm x-terminal-emulator
以下のパッケージが新たにインストールされます:
  graphviz tcl8.4 tk8.4
アップグレード: 0 個、新規インストール: 3 個、削除: 0 個、保留: 0 個。
3043kB のアーカイブを取得する必要があります。
展開後に追加で 8565kB のディスク容量が消費されます。

これで、OK。先ほどコマンドラインで実行して生成された ファイルを全て消去してから、もう一度コマンド実行。

# webdruid -e /etc/webdruid/webdruid_aaa.conf

で、index.html から生成結果を見てみると、できてます!

例です。

サイト内のページ名が横長の楕円で表示されていて、その楕円間に 矢印が行き渡っています。

これが、サイト訪問者の移動を示しています。 あぁおもしろい。

で、最後に仕上げです。

なぜか文字化けをいっぱいしているので 文字化け対策として、以下のようにします。

# cd /usr/share/locale/ja/LC_MESSAGES
# mv webdruid.mo webdruid.mo.060617

つまり、上記フォルダ内の webdruif.mo というファイルを 無くしてしてしまってください。 ここでは、後で戻せるように mv でバックアップしてます。

mv /usr/share/locale/ja/LC_MESSAGES/webdruid.mo \ /usr/share/locale/ja/LC_MESSAGES/webdruid.mo.org

もう一度、コマンドラインで実行して生成されたファイルを全て 消去して、もう一度コマンド実行。

# webdruid -e /etc/webdruid/webdruid_aaa.conf

表示してみて、文字化けしていなければOKです。 ちゃんと出力先のファイルを一旦全部消去してから コマンドを再実行しないと直らないみたいなので、 注意してください。

あとは、このコマンドを定期的に実行するようにすればOKですね。 当サーバーでは、1日1回実行することにしました。

/usr/local/bin/webdruid.sh を作成

crontab -e

で1日1回実行するようにした。

linux/debiansarge/07.webdruid.txt · 最終更新: 2023/07/16 17:46 by hohog

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki