Adobe Analytics

Adobe Analytics: Webサイト内で発生したJavascriptエラーの内容をAdobe Analyticsで計測する。

こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。

今日は、Webサイト内で発生したJSエラーをAdobeAnalyticsで計測する方法についてです。

AdobeAnalyticsでは、404エラーページを計測するためのs.pageTypeという変数がありますが、その他のエラーは別途eVarやpropを使って計測する必要があります。

下記は404エラー計測の例です。

s.pageType = "errorPage";
s.pageName = "404:" + location.href;

これで404エラーが発生したページとリファラーをクロス集計すれば、リンク切れを起こしてるページを特定出来きますよね。
そういうサイト内の離脱ポイントというか機会損失につながる要素を地道に埋めていく事で、サイトを改善して行くのもWeb解析の重要なタスクです。

その他にもJavascriptエラーが起きてUXを低下させてる箇所を見つけだして、継続的にユーザビリティを改善して行くのも重要じゃないかと思いました。
どうやって計測するかというと、Javascriptのonerrorというイベントハンドラーがあるので、それをトリガーにして、AdobeAnalyticsで計測してみます。

onerrorについてはMDNに詳しい仕様が載ってます。
GlobalEventHandlers.onerror – Web API インターフェイス | MDN

GoogleAnalyticsでonerrorを計測するサンプルはすぐ見つかりますね。
How To Setup A Cheap Exception Notifier For JavaScript | Protonet, Inc.

これを参考にしてAdobeAnalyticsで実装するとこうなりました。

window.onerror = function(msg, file, line, col, err) {
	window.scmsg = msg;
	window.scfile = file;
	window.scline = line;
};

var scerr = setInterval(function(){
	if (typeof window.scmsg != "undefined" && typeof window.s != "undefined" && typeof s.tl == "function") {
		s.tl(true, "o", "error", {linkTrackVars: "eVar11", eVar11: window.scmsg + ":" + window.scfile + ":" + window.scline});
		clearInterval(scerr);
	}
}, 1000);

onerror発生時に、まだAdobeAnalyticsのs_codeタグがロードされていないと、「s is not defined」というエラーが出るので、setIntervalを使って、s_codeがロードされるのを待ちます。

そしてロード後に、カスタムリンク(s.tl関数)を使ってエラー内容を送信します。
そして一度エラー計測を送信したあとは、clearIntervalを使ってs.tl関数の実行を停止する、という実装です。

別にeVarじゃなくてpropでいいんじゃないの、とも思いますが、propだと100byteの壁があるので、
eVarがもう足りないというサイトでは、propを複数使ってクロス集計すると良いです。

弊社ではAdobeAnalyticsの様々なカスタム実装支援を行なっております。
お問い合わせはこちらからどうぞ。

ブログへの記事リクエストはこちらまで

関連記事

  1. Adobe Analytics

    Metabase: カスタムマップで日本地図を追加する

    こんにちは、エクスチュアの權泳東(コン・ヨンドン)です。今回は…

  2. Adobe Analytics

    Adobe Analytics: Mobile SDK 4.x でアプリ計測する際の小技

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  3. Adobe Analytics

    Adobe Analytics: BigQuery+Lookerでアトリビューション分析

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

  4. Adobe Analytics

    Adobe AnalyticsとGoogle Analyticsの違い③ カスタム計測のされ方の違い…

    こんにちは。CEOの原田です。今回もAAとGAの違いを述べていきま…

  5. Adobe Analytics

    Adobe AEP SDKをTypeScriptで開発したReactNativeアプリに実装する

    こんにちは、エクスチュアの権泳東(權泳東/コン・ヨンドン)です。…

  6. Adobe Analytics

    Adobe Analytics: AppMeasurement.jsの実装開発作業に使うツール Ja…

    こんにちは、エクスチュアの權泳東(権泳東/コン・ヨンドン)です。…

最近の記事

  1. Tableauのテスト自動化を実現する Wiiisdom O…
  2. Databricksが買収した8080Labのbambool…
  3. databricksのnotebookを使ってみよう その2…
  4. databricksのnotebookを使ってみよう その1…
  5. databricks:GCPで利用を開始する
  1. Google BigQuery

    オープンソースBI「Metabase」の使い勝手が丁度良かった
  2. Tableau

    TableauでTreasure Data上のデータへ接続する方法(2019/1…
  3. セッションリプレイ

    セッション・リプレイの機能強化
  4. Google Analytics

    Google Analytics 4: イベントパラメータをセッションスコープで…
  5. ObservePoint

    機会損失を未然に防ぐ!ユーザエクスペリエンスシミュレーター”WebJ…
PAGE TOP