インストールについては、Analogのインストールにて記載している。また、運用については、Analogの運用にて記載している。
ログを解析するうえで、自分のアクセスはあまり意味がない。そこで、analog.cfg に下記のように指定することで、特定ホストによるアクセスログを除外できる。記述する位置はどこでも良い。
HOSTEXCLUDE 192.168.0.* HOSTEXCLUDE 192.168.1 HOSTEXCLUDE *.omoshiro-joho.com
いくつか注意すべき点がある。Analogの解析は、あくまでログファイルを元に行なわれるので、ログファイルにアクセス元としてドメイン名が記録されていた場合は、IPアドレスで除外指定をしても無効である。また、IPアドレスの場合は、ワイルドカード指定を省略できるが、ホスト名の場合は省略不可である。下記に例を載せる。
HOSTEXCLUDE omoshiro-joho.com # "miyu.omochiro-joho.com" からのアクセスは除外されない
参考
上位○○個を表示する、という指定のしかたは、調べたけれど分からず。FLOOR系のコマンドで閾値を設定すれば、これまで省かれていた下位部分の内容も、見えるようになる。
以下は、2リクエスト以上あった検索語(検索語レポート)を表示する設定である。
SEARCHWORDFLOOR 2r
以下は、200リクエスト以上あったリクエスト(リクエストレポート)を表示する設定である。
REQFLOOR 200r
FILEEXCLUDE は、あくまで"?"より手前にあるファイル名までしか見ないようで、うまく制御できない。
ARGSEXCLUDE を用いると、URL引数部分は無視して集計される。下記のコマンドの利用により、リクエストレポートでURL引数の異なるリクエストの明細が表示されなくなる。
ARGSEXCLUDE *.cgi,*.php
逆に、URL引数が異なる場合、それらを異なるファイルとして扱いたい場合は、ARGSINCLUDE を用いる。
いずれも指定しないデフォルト状態だと、URL引数を無視した集計と、その下にURL引数ごとの明細が表示される。
また、URL引数が少なすぎる場合、それが無視されてしまう(そのURL引数を持つURLは、URL引数を持たないURLと等価に解釈される)。これを防止するために、ARGSFLOOR を利用する。これを設定すると、無視されるURL引数の数の閾値を、下げることができる。
URL引数にしても、個別のページを示すものから、単なる操作コマンドまで多々あります。その上で、欲しい情報を収集するには、FILEINCLUDE、FILEEXCLUDEを使って、個別に設定をします。
FILEEXCLUDE *.php FILEINCLUDE /wiki/index.php?* FILEEXCLUDE /wiki/index.php?cmd=* FILEEXCLUDE /wiki/index.php?plugin=*
上記の例では、拡張子phpのファイルは禁止しますが、例外的に"/wiki/index.php?"のみ許可しています。ただし、"/wiki/index.php?cmd="、"/wiki/index.php?plugin="については、除外しています。