More Related Content
Similar to Piwikを用いたアクセス解析外部公開用
Similar to Piwikを用いたアクセス解析外部公開用 (20)
More from CROOZ, inc. (16)
Piwikを用いたアクセス解析外部公開用
- 10. © CROOZ,Inc. 10
回遊・意向段階で見るべき指標
・PV数 ページが表示された回数
・UU数 ページを表示した人の数
・セッション数 訪問の回数(≠通信セッション数)
・離脱数 出口となったページの回数
・遷移数 出口とならず次のページに移った
回数。
※PV = 離脱数 + 遷移数
・離脱率 離脱数÷PV
・平均閲覧時間 セッションの時間
- 29. © CROOZ,Inc. 29
システム概要
計測対象サイト
計測タグ発行
計測タグ 計測API
タグ埋込
ポストで送信
UI
連携API
DB
アクセス
閲覧
外部システム
WebAPI連携
① Piwikの設定画面から計測タグを
発行する
② 各サイトのHTMLのBODYタグの
一番最後に計測タグを埋め込む
③ 各サイトのページが表示された際
に計測APIに対しPOSTで情報を
送信する
④ Piwikで集計結果を表示する
- 30. 計測対象サイト
© CROOZ,Inc. 30
高トラフィック環境でのシステム構成図
アクセス
DNS LB
Webサーバ
内部LB
Piwik
計測サーバ
計測API
計測API
DB(Slave)
DB(Slave) DB(master)
DBサーバ
UIサーバ
UI / 連携API
DB(Slave)
閲覧
・ 内部LB経由で計測APIを2重化し負荷
を分散する。
・ 計測APIのトラッキング処理の負荷軽減
のためDBのマスターを独立させ、計測APIサーバ側
にレプリカを置く。
・ UI用のWebサーバを計測APIサーバと分ける。
・ 自動アーカイブを有効にする。
LAMP環境なので上記以外は一般的な高負荷対応と同じ
- 32. © CROOZ,Inc. 32
計測タグについて
以下の3つの方法がある
java scriptタグ
一般的に利用される方法。
Google Analyticsと考え方として同じで、Bodyタブの最後に埋め込み、計測
サーバにポストで情報を送信する。
img タグ
java scriptが利用できないモバイルサイトなどで用いる方法。
計測サーバ上の1pixelのドット画像を読み込むことでアクセスがあったことを
計測する。
プログラムではないので付加情報は送信できない。
計測用API
計測用クラスを継承し独自に計測サーバにポストで情報を送信する。
最も自由度は高いが、java scriptのように実装がクライアントサイドではない
ためブラウザバックの際にイベントが計測されない
Viewの共通部品としてjsタグを定義しておけば済む
- 33. © CROOZ,Inc. 33
java script タグの基本構成
基本は以下のとおり
<!-- Piwik -->
<script type="text/javascript">
var pkBaseURL = (("https:" == document.location.protocol) ?
"https://{$PIWIK_URL}/" : "http://{$PIWIK_URL}/");
document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js‘
type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", {$IDSITE});
piwikTracker.trackPageView();
piwikTracker.enableLinkTracking();
} catch( err ) {}
</script>
<!-- End Piwik Code -->
$PIWIK_URLにはPiwikのIPまたはDomainNameを、
$ISSITEにはPiwik上のサイトIDを入力
- 34. © CROOZ,Inc. 34
java script タグにページタイトルを追加する
URLだけでは何のページか帳票上わからないため、
ページのタイトルを追加してみる
<script type="text/javascript">
try {
var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", {$IDSITE});
piwikTracker.setDocumentTitle(document.domain + “/” + document.title);
piwikTracker.trackPageView();
piwikTracker.enableLinkTracking();
} catch( err ) {}
</script>
- 35. © CROOZ,Inc. 35
java script タグにカスタム変数を追加する
カスタム変数とは、任意に設定できる変数。
piwikTracker.setCustomVariable(index, name, value, scope)
index 1から始まるキー(整数)。ユニークである必要がある。
name カスタム変数の名前。例)user_id, user_agent
value カスタム変数値
scope 変数のスコープ(”visit” か “page” かのいずれか)
注意点
・ カスタム変数はscope毎に各5つまでしか定義できない
・ indexで一意に設定が特定できなければならない
・ カスタム変数名および変数値の最大長は200文字である
・ むやみに追加すると計測APIの通信が重くなる
- 36. © CROOZ,Inc. 36
java script タグにカスタム変数を追加する
例)user-agentを追加する
piwikTracker.setCustomVariable( 1,
“user-agent”,
navigator.userAgent.substr(0,200),
“view”);
例)userIdを追加する
piwikTracker.setCustomVariable( 2,
“userId”,
“hogehoge”,
“view”);