アクセスログの不要な部分をカットする
サーバーに記録されるアクセスログを使って、複数サイトのアクセス解析をする方法のつづき。
Webサーバーに記録されるアクセスログには、様々な情報が書き込まれている。
そのため、アクセス解析に関係ないアクセスログは、バッサリとカットする必要がある。
というのも一行一行はシンプルな記録なのだが、ページで使われる画像ファイルやcssファイルの呼び出しも、一行ずつのログとして記録されているので、全体として分量が膨らんでいるからだ。
具体的に言うと、1ページ閲覧するのに、cssファイル1個以上、画像ファイル10個前後も呼び出していたりするのだ。
欲しいのは、アクセスされたページのログだけなのに、その10倍以上のログが連なってくる。
また画像ファイルをスキップしても、色んな不要ログがたくさんある。
たとえばこれは画像ファイルを全てスキップしたアクセスログをWebLogExpertで読み込んだ分析画像だけれど、一番上に謎の「/」と言うのが来ている。
これは何だろうと色々調べて見たら、HEADメソッド(HEADリクエスト)というモノだった。
通常はGETメソッドでファイルを要求してくるのだが、HEADメソッドは「リンク先があるかどうかを尋ねるリクエスト」ということらしい。
HEADリクエストの場合は、リクエストしたURLが載っていないので、「/」表示になっているわけだね。
もちろんこれもスキップ対象だ。
アクセスログの軽量化の例
画像ファイルをスキップした後に、さらに軽量化したら、半分まで減らせた。
スキップ前のデータがどれくらいあったか、スキップを外して再確認してみると(一番下のファイル)、約140MBもあった。
最終的には約19MBまで軽量化できたので、アクセス解析に不要なログを消去したら、約7分の1くらいに軽量化できたことになるね。
因みに軽量化したアクセスログを、エキスパート・ライトで解析してみたら、ちゃんと「/」のが消えた。