アクセス解析(awffull)の導入では、/etc/awffull/awffull.conf の次のところを変更して使用した。(LogFileは自機のlogでないので特殊)
LogFile /home/adachi/Downloads/dabiyonelog/dabiyone.com.log OutputDir /var/www/awffull Incremental yes HostName dabiyone.com
このページでは前回で不足したところを調整する。
結果を眺めていて、以前見ていたwebalizerとの違いに気がつく。
国別状況が出ない。
ホスト名がIP(ここはIPでも私にとってはあまり必要ではない)
参照元 サイト内リンクも計数されている。
そもそも日本語での公開なので、この情報が必要なのか疑問ではあるが、100%unknownというのも寂しい。
原因はログがIPアドレスで記録してあることにある。ログにドメイン名を記録するためにはDNSで逆引きをする必要があり、負荷が高くなるのでレンタルサーバー側としてはIPのままにするのが得策であろう。
こちらで逆引きするオプションがあるかもしれないと考えたが、/etc/awffull/awfull.conf に次のような記述を発見したので、以下のように設定。#adachiの下の部分が変更点。
# GeoIP enables or disables the use of the GeoIP capability for more # accurate detection of countries. Default is 'no'. # NOTE! Do not enable GeoIP if you analyse files that have had the IP Address # translated to a Fully Qualified Host Name. # Use either raw IP Addresses and GeoIP, or Names and disable GeoIP. # ie. Don't use GeoIP AND DNSHistory. #GeoIP no #adachi GeoIP yes # GeoIPDatabase is the location of the GeoIP database file. Default is # '/usr/local/share/GeoIP/GeoIP.dat', which is where a default GeoIP # install will put it. Note that the database is updated monthly. # For the details see: http://www.maxmind.com/app/geoip_country #GeoIPDatabase /usr/local/share/GeoIP/GeoIP.dat #adachi GeoIPDatabase /usr/share/GeoIP/GeoIP.dat
「IPアドレスのときGeoIPを使う」か「FQNのときGeoIPを使わない」のどちらかということだが、IPなので使ってみる。IPの範囲で割り当てられている国がある程度わかるということらしい。
GeoIP.datの位置を確かめて(debianでは異なることがたまにある)指定した。
しかし、これだけではまだだめだった。
うまく行かないので、パッケージマネージャーでGeoIPを調べると、
GeoIP geoip-database-extra
というパッケージがあり、解説には、
IP lookup command line tools that use the GeoIP library (ASN/city database) GeoIP is a C library that enables the user to find the country that any IP address or hostname originates from. It uses a file based database. This database simply contains IP blocks as keys, and countries as values and it should be more complete and accurate than using reverse DNS lookups. This package contains the free GeoLite City and ASN database.
これはまだインストールされていない。もしもawffullから呼ばれているコマンドが入っていないとしたら...と考えてインストールしてみた。
これが「あたり」
「Top30 of ... Total Sites」 のホスト名は当然これでは解決されない
グラフ画像下のテキストを示す。
サイト内リンクも計数されているが、index.php/admin/など私の知らないものもある。
レンタルサーバーの提供するものでもサイト内のリンクで埋め尽くされる感があり、外部の参照が探しにくい。もっとも最近では検索サイトからの物が多くてあまり参考にはならないのだが。
Top 17 of 17 Total Referrers # ページ URL 1 164 74.55% - (Direct Request) 2 8 3.64% https://uptime.com/dabiyone.com 3 7 3.18% dabiyone.com 4 6 2.73% https://157.7.107.47:443/ 5 6 2.73% https://brandnewblogs.com/site-browser/ 6 6 2.73% https://www.google.com/ 7 5 2.27% http://www.dabiyone.com/ 8 4 1.82% https://www.dabiyone.com/ 9 2 0.91% http://pizza-imperia.com/ 10 2 0.91% http://search.yahoo.co.jp/ 11 2 0.91% https://dabiyone.com/misc/index.html 12 2 0.91% https://www.facebook.com/ 13 2 0.91% https://www.google.co.jp/ 14 1 0.45% http://dabiyone.com/downloader/ 15 1 0.45% http://dabiyone.com/index.php/admin/ 16 1 0.45% http://dabiyone.com/rss/catalog/notifystock/ 17 1 0.45% https://dabiyone.com/math/index.html
/etc/awffull/awfull.conf に次のような記述を発見したので、以下のように設定。#adachiの下の部分が変更点。
# Your own site should be hidden #HideSite *mrunix.net #HideSite localhost #adachi HideSite dabiyone.com # Your own site gives most referrals #HideReferrer mrunix.net/ #adachi HideReferrer dabiyone.com/
これで、次のように改善された。dabiyone.comが残った。
Top 10 of 17 Total Referrers # ページ URL 1 164 74.55% - (Direct Request) 2 8 3.64% https://uptime.com/dabiyone.com 3 7 3.18% dabiyone.com 4 6 2.73% https://157.7.107.47:443/ 5 6 2.73% https://brandnewblogs.com/site-browser/ 6 6 2.73% https://www.google.com/ 7 2 0.91% http://pizza-imperia.com/ 8 2 0.91% http://search.yahoo.co.jp/ 9 2 0.91% https://www.facebook.com/ 10 2 0.91% https://www.google.co.jp/
HideReferrer の最後の"/"をなくしてみた。
HideReferrer dabiyone.com
dabiyone.comが消えたが、uptime.com/dabiyone.comも消えた。
Top 8 of 17 Total Referrers # ページ URL 1 164 74.55% - (Direct Request) 2 6 2.73% https://157.7.107.47:443/ 3 6 2.73% https://brandnewblogs.com/site-browser/ 4 6 2.73% https://www.google.com/ 5 2 0.91% http://pizza-imperia.com/ 6 2 0.91% http://search.yahoo.co.jp/ 7 2 0.91% https://www.facebook.com/ 8 2 0.91% https://www.google.co.jp/
最後の"/"がない呼び出しもあるのでこれがよい。uptime.comは「Uptime Monitoring and Server Performance Reports」なんだそうだが、不要だ。157.7.107.47は借りているレンタルサーバーでhttpからhttpsへのリダイレクトで使われているものと考えられる。pizza-imperia.comはリファラースパムだが放置。
docのDNS.READMEにawffullからDNS検索の機能を外したとあります。別のソフトウェアであるdnshistoryが使えるとのことです。
これを使って以下のようにすると書いてあります。
$ dnshistory -d dns.db -f accesslog.log $ dnshistory -T -d dns.db -f accesslog.log | awffull -c awffull.conf
Debianのパッケージにもdnshistoryがありましたので試してみます。
Debianのパッケージの解説です。
dnshistory ログファイルから IP アドレスに変換し保存 ウェブログファイルから抽出された IP アドレスについて DNS 名の変更履歴を 保存する手段を提供します。主な目標は IP アドレスから FQDN への再検索を 必要とせずに古いログファイルの多重分析を実行し、さらに、検索を現在ではなく 当時に実行したかのような検索の正確性を維持することです。
上記のコマンドで結果を出すには、awffull.confを書き換える必要があります。
ログファイルをコメントアウトし、STDINとすることと、GeoIPもコメントアウトまたはnoとすることです。
#LogFile /home/adachi/Downloads/dabiyonelog/dabiyone.com.log #GeoIP yes
一度、/var/www/awffullの全ファイルを削除してやり直す必要があります。
DNShistoryを使用した結果
GeoIPを使用した結果(再掲)
文字でも示しておきます。
DNShistoryを使用した結果
Top 11 of 11 Total Countries # ページ ヒット ファイル Volume 国 1 119 54.09% 238 57.77% 103 52.28% 2.20 MB 64.76% Commercial 2 49 22.27% 89 21.60% 31 15.74% 731.69 kB 21.53% Unresolved/Unknown 3 16 7.27% 42 10.19% 35 17.77% 251.85 kB 7.41% Japan 4 9 4.09% 12 2.91% 10 5.08% 52.29 kB 1.54% Network 5 8 3.64% 8 1.94% 8 4.06% 40.78 kB 1.20% Germany 6 6 2.73% 6 1.46% 0 0.00% 37.52 kB 1.10% Croatia/Hrvatska 7 6 2.73% 6 1.46% 3 1.52% 17.15 kB 0.50% Hungary 8 2 0.91% 2 0.49% 2 1.02% 10.61 kB 0.31% US Educational 9 2 0.91% 2 0.49% 1 0.51% 7.03 kB 0.21% Brazil 10 2 0.91% 2 0.49% 1 0.51% 7.03 kB 0.21% European Union 11 1 0.45% 5 1.21% 3 1.52% 41.32 kB 1.22% British Indian Ocean Territory
GeoIPを使用した結果
Top 13 of 13 Total Countries # ページ ヒット ファイル Volume 国 1 98 44.55% 202 49.03% 89 45.18% 1.71 MB 50.22% United States 2 30 13.64% 30 7.28% 2 1.02% 175.53 kB 5.17% Ukraine 3 23 10.45% 92 22.33% 60 30.46% 804.88 kB 23.69% Japan 4 15 6.82% 18 4.37% 13 6.60% 212.95 kB 6.27% Canada 5 11 5.00% 27 6.55% 6 3.05% 296.15 kB 8.72% Russian Federation 6 8 3.64% 8 1.94% 8 4.06% 40.78 kB 1.20% Germany 7 8 3.64% 8 1.94% 8 4.06% 29.28 kB 0.86% Netherlands 8 6 2.73% 6 1.46% 3 1.52% 45.51 kB 1.34% China 9 6 2.73% 6 1.46% 0 0.00% 37.52 kB 1.10% Croatia/Hrvatska 10 6 2.73% 6 1.46% 3 1.52% 17.15 kB 0.50% Hungary 11 4 1.82% 4 0.97% 2 1.02% 14.05 kB 0.41% Malaysia 12 3 1.36% 3 0.73% 2 1.02% 10.57 kB 0.31% United Kingdom 13 2 0.91% 2 0.49% 1 0.51% 7.03 kB 0.21% France
ホスト名がIPからドメイン名に。(私にとってはあまり必要ではないと言った所)
DNSHistoryとGeoIPで対応すると思われるものを比較した。
DNSでは.comはCommercialとし、GeoIPはIPの割当からUnited Statesと判断しているので、.comからのアクセスでありながら他の国に振り分けられているのだと思われる。
Unresolved/Unknownはプロキシなどを使ってアクセス元を変更しているものと考えられるが、GeoIPでは使用したIPで振り分けられるのであろう。本当のアクセス元ではないかもしれないが、プロキシの置かれた場所を反映していると考えられる。
日本語のページなのに、USからのアクセスが多いのは、まだこのサイトが知られていないことに加え、トップレベルドメインが.comなので、USからの調査の対象になっているのではないか。HideReferrerにuptime.com/dabiyone.comやbrandnewblogs.com/site-browser/が多いのもそれを示していると考えられる。
DNSHistory | GeoIP | ||
---|---|---|---|
65% | Commercial | 50% | United States |
22% | Unresolved/Unknown | ||
7% | Japan | 24% | Japan |
2% | Network | ||
1% | Germany | 1% | Germany |
1% | Croatia/Hrvatska | 1% | Croatia/Hrvatska |
1% | Hungary | 1% | Hungary |
0% | US Educational | ||
0% | Brazil | ||
0% | European Union | ||
1% | British Indian Ocean Territory | ||
5% | Ukraine | ||
6% | Canada | ||
9% | Russian Federation | ||
1% | Netherlands | ||
1% | China | ||
0% | Malaysia | ||
0% | United Kingdom | ||
0% | France |
ということで、国別のレポートはDNSHistoryよりGeoIPの方が意味のあるものになっているような気がする。
dnshistoryによる集計をやめてGeoIPに戻す。
/etc/awffull/awffull.confの変更箇所のみのまとめ
LogFile /home/adachi/Downloads/dabiyonelog/dabiyone.com.log OutputDir /var/www/awffull Incremental yes HostName dabiyone.com GeoIP yes GeoIPDatabase /usr/share/GeoIP/GeoIP.dat HideSite dabiyone.com HideReferrer dabiyone.com
LogFile | 処理するログファイルのパスとファイル名 |
OutputDir | 結果を出力するフォルダ |
Incremental | 前の集計の内部情報を保存して次の集計で二重にならないようにする。 |
HostName | タイトルに使う自ホスト名 |
GeoIP | IPアドレスから国情報を得る機能を使う。 |
GeoIPDatabase | GeoIPの依るデータベースの所在 |
HideSite | 自分自身からのアクセスをレポートに含めない |
HideReferrer | 参照ページに自分自身をレポートに含めない |
インストール時にcronが設定されているので、自ホストのログならば自動で更新されるが、今回はレンタルサーバー上のサイトなので、ログをダウンロードして設定のLogFileを用意する必要がある。
201902??の部分は月ごとに変える必要がある。毎日やるわけでもないので、今回はこのままにしておく。
adachi@debian64:~/Downloads/dabiyonelog$ zcat dabiyone.com_201902??.log.gz >dabiyone.com.log adachi@debian64:~/Downloads/dabiyonelog$ awffull -c /etc/awffull/awffull.conf
加えてawffullコマンドも実行する場合はcronは削除しても良い。cron実行設定時に動いていないPCの場合は特に。
今回、参照元を確認する人をスパムサイトに誘導するために、同一のReferrerでたくさんのアクセスをする行為をリファラースパムというようになったと知りました。昔からありましたが、アクセス解析を見る人は少数だろうから、わさわざそんなことが目的とは思わず、なぜここからアクセスがあったのかと不思議に思っていました。
リファラースパムを検索するとほとんどすべてGoogleアナリティクスでの対策が話題で、Googleアナリティクスのおかげで参照元を確認する人が増えているで、リファラースパムも増えているのかと思い至りました。
リファラースパムのおかげでアクセス解析が不正確になるという指摘もあるのですが、クローラーが出現したときにもアクセス解析が難しくなりました。また、参照元はたくさんの検索サイトで埋め尽くされて、本来のリンク元を見つける楽しみはかなり前からなくなてきています。
awffullの記事が見つけられなくて、あまり使われていないのかなと思ったのですが、Googleアナリティクスの方へ流れているのでawffullについて書く人が少ないということでしょうか。
GoogleアナリティクスはトラッキングコードというJavascriptをページに埋め込んでアクセスのたびにgoogleへデータを送りgoogleが解説する仕組みです。余計なトラフィックを発生させるのがちょっと気になるところです。