Analogの検索語句レポートを日本語化
カテゴリ:ログ管理
日時:2005/02/11 12:12
検索エンジンに入力された文字列は、エンコードされてURLに埋め込まれる。この情報はApacheのアクセスログにも記録されるので、訪問者がどのような検索文字列でアクセスしてきたのかが分かる。
ただし、Analogはエンコードされた文字列をそのまま表示するため、人間には分かりにくい(16進数がそのまま読める人は別だが)。analogurldecodeを使えば、エンコードされた文字列をデコードしてくれる。 前述のURLにアクセスし、analogurldecodeをダウンロードする。「ベータ版 その2」でOK。これをEUC(改行コードLF)で「analogurldecode」というファイル名で/usr/local/binに保存。実行できるようにパーミッションを変更する。
次に、Jcode.pmをインストールする。
ここまでできたら、Analogの実行から検索文字列のデコードまでを自動化する。
ただし、Analogはエンコードされた文字列をそのまま表示するため、人間には分かりにくい(16進数がそのまま読める人は別だが)。analogurldecodeを使えば、エンコードされた文字列をデコードしてくれる。 前述のURLにアクセスし、analogurldecodeをダウンロードする。「ベータ版 その2」でOK。これをEUC(改行コードLF)で「analogurldecode」というファイル名で/usr/local/binに保存。実行できるようにパーミッションを変更する。
# chmod 755 /usr/local/bin/analogurldecode環境によっては、analogurldecodeの1行目
#!/usr/bin/perlを書き換える必要があるかもしれない。
$ which perlでPerlのパスを確認するといいだろう。
/usr/bin/perl
次に、Jcode.pmをインストールする。
# emerge dev-perl/Jcodeこれで準備完了。
ここまでできたら、Analogの実行から検索文字列のデコードまでを自動化する。
#!/bin/shという内容のスクリプト/usr/local/bin/analog.shを作り、実行権を与える。
/usr/bin/analog
cd /home/httpd/html/log
/usr/local/bin/analogurldecode outfile.html > index.html
# chmod +x /usr/local/bin/analog.shこれを使って、
# /usr/local/bin/analog.shが問題なく実行できればOK。cronに登録して定期的に実行させる。実行時間を制御したいので、/etc/cron.hoge/以下ではなく/etc/crontabに記述する。
30 5 * * * root /usr/local/bin/analog.shこれで、毎日朝の5:30にAnalogによる集計が始まる。