アクセスログ解析ソフト AWFFull
はじめに
AWFFull は Webalizer から派生したアクセスログ解析ソフトです。Webalizer の特徴である高速な処理と豊富なオプションを踏襲しながら、バグフィックスやいくつかの機能が追加されています。Webalizer と酷似していますが Webalizer は長らくメンテナンスされていないので AWFFull の利用をおすすめします。
本書では Webalizer との違いを中心に AWFFull を紹介します。Webalizer に関する知識は巻末のリソースをご覧ください。この文章を書いている時点で AWFFull の最新バージョンは 3.4.1 です。
AWFFull の特徴
AWFFull の特徴を挙げます。いずれも Webalizer には無いものです。
- 履歴を12ヶ月以上保存可能。
- グラフのサイズ、色指定が可能。
- グラフのY軸の目盛が読みやすい数値で表示される。
- いくつかの円グラフが追加された。
- geolizer関連のバグが修正された。
- User Agent と Referre が Hits ではなく Pages で出力される。
- コンパイル時の警告をすべて修正。
- 日別データ、時間帯別データに Hits の割合が追加された。
- 見た目のちょっとした改良。
- ブックマークされた数の追跡。あくまで推測です!
- バックエンドに PCRE と標準ライブラリが使用されてコードが読みやすくなった。
- パターンマッチングを改良して処理速度が50%アップ!(もちろん時と場合による)。
- 404 エラーの解析。リファラとリクエストが表示される。
- NotPageType オプションが追加された。
- レポートHTMLファイルの色をカスタマイズできる。
- AssignToCountry オプション
- GroupAndHide系 オプション
- サンプルの設定ファイルに豊富なユーザエージェントのグループが付いている。
解析レポートの用語
AWFFull が出力するレポートで重要な用語の意味を説明します。実際の解析レポート(英語)を見ながら読み進めてください。Webalizer との大きな違いはありませんが復習として読むことをお薦めします。なお、解析レポートファイルのメッセージは日本語もサポートされています。
- Hits
- リクエストの総合計。ログファイルの行数だと思えばわかりやすいでしょう。
- Files
- クライアントへ送り返されたファイルの数。Hits が「受信した記録」Files は「送信した記録」だと考えてください。Hits と Files の差が大きい場合、訪問者ひとりあたりの閲覧ページ数が大きいことを示します。例えばサーバからステータスコード 304 が送り返されたならウェブブラウザはキャッシュ機能を働かせます。このとき 304 の記録で Hits は増加しますがファイルを送信した記録が残らないので Files は増えないというわけです。
- Pages
- ページの閲覧回数。通常ページとしてカウントされるのは html, cgi, php ファイルです。AWFFull の設定でページとしてカウントするファイルを指定できるので、設定を変更すると Pages の数値は変化します。他のアプリケーションではページビュー [Pageview] と呼ばれる項目です。
- Sites
- クライアントの数。IPアドレスおよびホスト名で判定されます。他のアプリケーションではユニークビジターと呼ばれることもあります。
- Visits
- クライアント (Sites) がサイトを訪れた回数。クライアントのリクエストの時間差が指定した時間(デフォルトは30分)を越えた場合に新しい訪問としてカウントされます。新しい訪問と見なす時間は指定できます。他のアプリケーションではセッション数と呼ばれることもあります。
- Volume
- サーバーからクライアントへ送られたデータの量。
- Bookmarks
- ブックマーク(お気に入り)に登録された数。ここの数値は推測の域をでない解析結果なので当てにしないほうが良いです。
一般的に「アクセス数が増えた、減った」といわれる時の数値は、Pages と Visits が該当するでしょう。
AWFFull の設定
Webalizer には無く、AWFFull で追加された設定項目だけを説明します。
- NotPageType
- Pages にカウントしないファイルを拡張子で指定する。設定値に "." や ワイルドカードの使用は禁止されています。また、PageType と同時に設定することができません!
- TopURLsbyHitsGraph
- Hits による Top URLs の円グラフ表示を yes または no で指定する。
- TopURLsbyVolGraph
- Total URLs By Volume の円グラフ表示を yes または no で指定する。
- TopEntryPagesGraph
- Entry Pages の円グラフ表示。no, hits, visits いずれかを指定する。no なら円グラフは出力されない。hits なら Hits の値で円グラフが生成、出力される。visits なら Visits の値で円グラフが生成、出力される。
- TopExitPagesGraph
- Exit Pages の円グラフ表示。no, hits, visits いずれかを指定する。no なら円グラフは出力されない。hits なら Hits の値で円グラフが生成、出力される。visits なら Visits の値で円グラフが生成、出力される。
- TopSitesbyPagesGraph
- Total Sites の円グラフ表示。yes または no で指定する。
- TopSitesbyVolGraph
- Total Sites By Volume の円グラフ表示。yes または no で指定する。
- TopAgentsGraph
- Total User Agents の円グラフ表示。yes または no で指定する。
- YearlySubtotals
- レポートのトップページで年単位の集計結果を表示。 yes または no で指定する。
- Top404Errors
- 404 のレポート表示件数を数値で指定する。デフォルトは 20。
- All404Errors
- 404 のレポートをすべて出力する。yes または no で指定する。
- GroupAndHideAgent
- ユーザエージェントの分類と非表示。Webalizer では個別に設定していた GroupAgent と HideAgent を一括で指定できる仕組みとなっている。複数指定が可能。
- GroupAndHideSite
- Site の分類と非表示。詳細は GroupAndHideAgent と同じ。
- GroupAndHideReferrer
- リファラの分類と非表示。詳細は GroupAndHideAgent と同じ。
- GroupAndHideURL
- URL の分類と非表示。詳細は GroupAndHideAgent と同じ。
- GroupAndHideUser
- ユーザの分類と非表示。詳細は GroupAndHideAgent と同じ。
- AssignToCountry
- 特定ドメイン名の国名(2桁の国コード)を割り当てる。複数指定が可能。
- IndexMonths
- トップページに表示する月間履歴の件数を指定する。デフォルトは 60。
- GraphIndexX
- トップページに表示されるグラフの横幅を指定する。デフォルトは 512。最小値は 512。
- GraphIndexY
- トップページに表示されるグラフの高さを指定する。デフォルトは 256。最小値は 256。
- GraphDailyX
- 日別グラフの横幅を指定する。デフォルトは 512。最小値は 512。
- GraphDailyY
- 日別グラフの高さを指定する。デフォルトは 256。最小値は 256。
- GraphHourlyX
- 時間帯別グラフの横幅を指定する。デフォルトは 512。最小値は 512。
- GraphHourlyY
- 時間帯別グラフの高さを指定する。デフォルトは 256。最小値は 256。
- GraphPieX
- 円グラフの横幅を指定する。デフォルトは 512。最小値は 512。
- GraphPieY
- 円グラフの高さを指定する。デフォルトは 256。最小値は 256。
- ColorHit
- グラフ中の Hits を示す色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- ColorFile
- グラフ中の Files を示す色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- ColorSite
- グラフ中の Sites を示す色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- ColorKbyte
- グラフ中の Volume を示す色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- ColorPage
- グラフ中の Pages を示す色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- ColorVisit
- グラフ中の Visits を示す色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- ColorBookm
- グラフ中の Bookmarks を示す色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- PieColor1
- 円グラフの第1の色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- PieColor2
- 円グラフの第2の色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- PieColor3
- 円グラフの第3の色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
- PieColor4
- 円グラフの第4の色を指定する。HTML で使用される16進数表記を用いる(#は不要)。
GroupAndHide系が追加されて設定の手間が省けるようになっていますし、実はレポートファイルのスタイルがCSSで定義されるようになったのでCSSファイルを直接変更すれば見た目のカスタマイズが行えます。
注意点
レポートHTMLファイルのcharset
HTML の charset が iso-8859-1 で固定されています。プログラムのソースコードを書き換えない限り meta 要素として常に出力されます。ソースコードの変更が行える人は src/output.c に該当の箇所があるので好みのエンコーディングに書き換えてリビルドしてください。ちなみに筆者は UTF-8 にして、レポートファイル自体のエンコーディングもUTF-8に変換しています。
筆者がこの問題を開発陣に問い合わせたところ、次のリリースで解決されるとの返事をもらいました。
検索キーワードの文字化け
解析された検索キーワードの多くが文字化けした状態で出力されます。検索キーワードは検索エンジン毎に異なるエンコーディングが使われるので文字化けの解決にはエンコーディング変換が必要になります。筆者は先の「レポートHTMLファイルのcharset」で書いたように AWFFull が出力したレポートファイルを UTF-8 に変換するようにして文字化けを解消しています。(化けたままのキーワードもありますが)
リソース
- AWFFull
- AWFFull オフィシャルサイト。
- Webalizerでアクセスログを解析する
- Webalizer の設定がだいたいわかる。
- アクセス解析 -Webalizer-
- Webalizer の解析結果の解説と Webalizer Quick Help の日本語訳がある。
$Date: 2008-06-28 00:27:19 +0900 (Sat, 28 Jun 2008) $