ログマニアックス

日々学んだこと、気づいたことをメモ代わりに残していければ。カバー範囲は割と広めです。

ログデータがうまく取れないと思ったら(モバイル編)

最近はモバイルサイトにも
アクセス解析の導入をすることが多くなっています。

PCに関してもデバッグのコツをいくつか紹介しましたが、
モバイルに関してもご紹介。

ログデータがうまく取れないと思ったら(PC版) | ログマニアックス

Apacheモジュール型のアクセス解析において、
うまく計測が出来ていない時のデバッグ手法に関して
簡単に紹介します。

PCサイトの場合には
Firefoxプラグインなどを利用することで、
何がまずいのかを探したりしますが、
モバイルではなかなかPCと同じような手法がが使えません。

 

まずはPCと同じ手法でチェック

モバイルサイトにおいても基本はおんなじです。
PCからアクセスできるのであれば、
Firebugなど利用してビーコン(IM)が出力されているかを確認します。

必要に応じてFiddlerなどのスニファーでも確認をしましょう。

携帯サイトへのアクセスはユーザーエージェントなどで
制限がかかっているので、
Fiddlerの機能や、Firefoxプラグインでユーザーエージェントを変更して
アクセスしてみましょう。

User Agent Switcher :: Add-ons for Firefox

これと、

User Agent Switcher の携帯用のXML - 我流天性 がらくた屋

こちらの組み合わせで使えます。

 

アパッチログと比較しよう

PCでもそうですが、上記の手法で解決しない場合には、
Apacheログとアクセス解析のローデータを比較する必要があります。

例えば、SiteCatalystではデータウェアハウスという機能で出力されたデータを元に
比較をすることができます。

Apacheログはテキストの形で落ちるので、
僕がデバッグをするときには期間をしぼって、テストケースの動きを比較します。

 

ソケット通信は通信内容をdump

また、ソケット通信で計測を実施しているページ群の場合には、
上記の方法でも、またApacheログでも落ちてきません。

そのため、TCPdumpというコマンドを利用することになります。

tcpdumpコマンド - 管理者必見! ネットワーク・コマンド集:ITpro

ネットワーク上に流れるパケットをモニタリングする。オプションとして条件式を指定すれば,取得したい情報にフィルタリングしてパケットを取得できる。通常は,root権限をもつ場合にのみ利用可能。

詳細は導入内容によってことなりますが、
サーバーから正しくログ情報を送られているのかを確認することができます。

ただ、上記コマンドで取得された出力データはそのままわかりにくいので、
僕の場合は、

Wireshark · Go deep.

こちらのソフトで読み込んでCSVにして確認しています。

 

モバイルのデバッグは難しい

モバイルサイトはそもそもPCから閲覧することができず、
アプリ要件や環境による影響もあるので、
ログデータがうまく取れないことが比較的よく発生します。

途方にくれてしまう部分も出てしまうかもしれませんが、
少なくとも原因がどこにあるのか、
上記の手法を活用してみてください