Comments
Description
Transcript
Web アクセスログの詳細情報を解析するシステムの構築
情報処理学会第 73 回全国大会 4V-3 Web アクセスログの詳細情報を解析するシステムの構築 佃 黒田 久泰‡ 杏奈† 愛媛大学大学院工学研究科‡ 愛媛大学工学部情報工学科† 1 2.2 はじめに Web ページを運用する上ではアクセスログを取 得・解析し、どのようなユーザーが訪れているのか を知ることが必要となってくる。現在 Web アクセ スログを解析するシステムとして有名なものに Google Analytics がある。 Google Analytics は Google 社が無料で提供して いる Web アクセスログの解析サービスのことであ る。このサービスを利用することで、対象サイトの 訪問者数、滞在時間、訪問回数、訪問者の検索キー ワード、訪問者の来訪前の URL(リンク元)、国・ 都市などを知ることができる。しかしこれだけでは、 訪問者の組織情報などの詳細な情報までは得られな い。これを得ることで、どのようなユーザーが訪問 しているかを知り、訪問してくるユーザーに合わせ た Web ページを作成することで、訪問者が増える ようになる。 また、Google Analytics は現在 25 か月分のログ しか保存できない。さらに Google Analytics を利 用する際にデータを Google に送信するため、余計 なトラフィックが増加してしまう。 本研究では DNS や Whois を利用してデータベー スを作成し Web アクセスログ解析を自社内で行う こと、Google Analytics にない詳細情報を得ること、 容量を軽くすることで Web ページの運用により役 立つようなシステムの構築を目的としている。 2 Web アクセスログの仕組み Web アクセスログの取得方法は主に3種類ある。 サーバーログ型、Web ビーコン型、パケットキャ プチャー型である。 Google Analytics は Web ビーコン型の Web アク セス解析、本研究で作成したものはサーバーログ型 の Web アクセス解析である。 2.1 サーバーログ型 サーバー内部に残されたユーザーのログファイル を集計して行う仕組みのアクセスログ解析。サーバ ーにインストールして解析するタイプと解析者のパ ソコンにインストールし、ログデータをダウンロー ドして解析する 2 つのタイプがある。 Development of Web Access Analysis System Using Detailed Information †Anna TSUKUDA Computer Science, Faculty of Engineering, Ehime University ‡Hisayasu KURODA Graduate School of Science and Engineering, Ehime University Web ビーコン型 サイトの各ページに JavaScript や特殊な画像イ メージ(縦横 1px の透明な gif 画像など)を貼り付け、 そのページがブラウザで表示される度に、サーバー にユーザーがアクセスしたページの情報を送る仕組 みのアクセスログ解析。 2.3 パケットキャプチャー型 ユーザーが Web ページにアクセスしたときの Web サーバーに流れているトラフィックを監視し、 そのパケットの中身を解析する。 3 Web アクセスログ解析でわかること Web アクセスログを解析することで様々な分析 が可能である。以下は有名な分析例をいくつかまと めたものである。 ・訪問者数 どのくらいの人が見てくれているか、Web ペー ジの人気度が分かる。 ・閲覧ページ数 Web ページのコンテンツに関心があるかどうか、 関心を持って閲覧してくれているか(1, 2 ページ 見ただけで閲覧をやめている場合は、コンテンツ がよくないと考えられる)。 ・訪問者の来訪前の URL(リンク元) Yahoo!と Google、どちらから多く来ているか、 検索エンジンからの検索が多いのか、どこかの Web ページで紹介されているのかなどを知るこ とができる。 ・訪問者の検索キーワード 検索エンジンでどんなキーワードを入力してきた かが分かる。想像していたキーワードと違う場合 もあるので、修正するだけで訪問者数がアップす る可能性もある。 ・どのページが一番閲覧されたか サイトマップが多い、よって Web サイトを閲覧 するときに迷いやすい。目玉と思っていたページ より他のページの方が多い、よって目玉と思って いたページは実はあまり見られていない。 など、上記のような分析ができる。このデータを 生かしてユーザーが何に関心があるのかも分析で きる。下階層にアクセスが多い場合は、上階層に ページを持っていくなどの工夫に役立つ。 ・訪問時間 最も利用の多い時間帯を割り出すことで、更新作 業などを何時に終わらせておけば効率がいいか、 などが分かる。 3-185 Copyright 2011 Information Processing Society of Japan. All Rights Reserved. 情報処理学会第 73 回全国大会 ・訪問者のドメイン名やホスト名 ホストごとのアクセス数が分かる。また、国内外 からのアクセスが分かる。海外からのアクセスが 多い場合は現地ユーザーを意識して改善するなど の分析ができる。 ・訪問者の使用ブラウザや画面サイズ Web ページを作る際のデザインなどに役立つ。 画面サイズの取得には、JavaScript を用いるた め Web ビーコン型に限られる。 Web アクセスログ解析システムの構築 4 今回構築した Web アクセスログ解析システムに は、Google Analytics にはない機能である、訪問者 の組織情報、訪問者に転送されたバイト数を加える。 4.1 Apache のログの残し方 今回用いた Apache のログは、できるだけ多くの 情報を記録するため、以下のような形式で出力する ようにした。 "%h %l %u %t %V \"%r\" %s %b \"%{Referer}i\" \"%{User-Agent}i\"" それぞれ、表 1 のような意味となっている。 表 1 今回用いた Apache のログ形式 文字列 %h %l %u %t %V %r %s %{Referer}i %{User-Agent}i 説明 リモート IP アドレス リモートログ名 情報がなければ - になる リモートユーザー リクエストを受けた時刻 仮想ホスト設定時のホスト名 リクエストの最初の行 ステータス 訪問者の来訪前の経由サイト (URL) ブラウザ名・OS 名・バージョ ンなどの情報 4.4 アクセスログファイルを圧縮 Apache のアクセスログファイルをそのままにし ておくと、容量が大きくなり解析時に多くの時間が かかる。余分な情報を削除しファイルの容量を小さ くしておくことで、解析する際の高速化およびディ スクスペースを節約してログの保存期間の延長を図 ることが可能となる。 アクセスログのサイズは以下のように削減した。 ・リクエストされたファイルが画像の場合で、かつ、 リンク元が同一ホストとなっている場合、リクエ ストの回数と転送サイズのみを記録し、それ以外 の情報は削除 ・User-Agent を見て、検索エンジンクローラーか らのアクセスであれば削除 ・ホスト名毎のフォルダを作成し、その中に年、 月のフォルダを作り、日付毎のファイルに保存 することでリクエストを受けた年月日とホスト 名の情報を削除 これにより、2010/11/20~2011/01/11 までの 53 日間のログ 1332MB を 454MB まで圧縮すること ができ、34.1%のサイズに圧縮された。以下の図 1 は日付毎のログファイルの圧縮によるサイズ変化を 15 日分示したものである。 ファイルサイズ(KB) 圧縮前 30,000 圧縮後 25,000 20,000 15,000 10,000 4.2 DNS と Whois 情報の利用 4.3 転送されたバイト数を表示 Apache のログには訪問者に転送されたバイト数 があるので、それを利用することで Web サーバー にかかっている負荷を知ることができる。 5,000 0 12/28 12/29 12/30 12/31 1/1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9 1/10 1/11 リモート IP アドレスから DNS の逆引きを用い て、ホスト情報に変換する。この DNS の逆引きに は多くの時間がかかることがあるため、これを回避 するため、一定時間キャッシュした情報を利用する。 また、Whois は、JPRS が無償で提供している IP アドレスやドメイン名の登録者などに関する情 報をインターネットユーザーが誰でも参照すること ができるサービスである。予め、JPNIC が管理し ている IP アドレスを Whois に問い合わせ、その結 果をデータベースに保存しておく。訪問者の IP ア ドレスからこのデータベースに問い合わせることで、 組織情報が得られる。 日付 図 1 圧縮によるファイルサイズの変化 5 まとめと今後の課題 本研究で構築したアクセス解析システムでは、 Google Analytics では得られない訪問者の詳細情報 や転送バイト数を得ることが出来た。今後の課題と しては、さらなるファイルの圧縮や、アクセス解析 の結果を表示するまでの時間の短縮が挙げられる。 参考文献 [1] The Apache Software Foundation : Apache HTTP サ ー バ バ ー ジ ョ ン 2.2 ド キ ュ メ ン ト : http://httpd.apache.org/ 3-186 Copyright 2011 Information Processing Society of Japan. All Rights Reserved.