TROCCO Web行動ログ収集SDK - 技術仕様
    • PDF

    TROCCO Web行動ログ収集SDK - 技術仕様

    • PDF

    記事の要約

    概要

    本ページでは、以下について説明します。

    動作環境

    TROCCO Web行動ログ収集SDKでは、以下の環境において行われたログが収集されることを確認しています。

    検証済みのバージョンに関して

    以下で記載されているバージョンはすべてメジャーバージョンです。
    TROCCO Web行動ログ収集SDKでは、該当メジャーバージョン内における任意のマイナーバージョンに対して、動作を確認しています。
    マイナーバージョンを含めたすべてのバージョンに対して動作確認が取れているわけではない旨、ご了承ください。

    OS

    • Windows 10以上
    • macOS 10以上
    • Android 7以上
    • iOS 12以上

    Webブラウザ

    • Microsoft Edge 42以上
    • Google Chrome 72以上
    • Safari 12以上
    • Mozilla Firefox 65以上
    SafariにおけるBack Forward Cacheの影響

    TROCCO Web行動ログ収集SDKでは、ブラウザバックの際にもPageViewが計測されます。
    ただし、TROCCO Web行動ログ収集SDK配信先サイトのHTTPレスポンスでCache-Control: no-storeおよびcache-control: no-cacheが付与されていない場合は、Safari(iOS/macOS)のBack Forward Cacheの影響でPageViewが計測されません。

    本事象はTROCCO Web行動ログ収集SDK側で対策できません。
    そのため、サイト側の設定変更にてご対応いただくか、JavaScriptを使用して強制的に画面をリロードさせるようにしてください。
    参考:ブラウザの「戻る」ボタンでキャッシュが表示されてしまう際の対策 #JavaScript - Qiita

    セッションの定義

    セッションとは

    ユーザーがサイトを訪問してから離脱するまでの、一連の流れをまとめた概念です。
    Google Analyticsでいうセッション・訪問と同義です。

    本項では、主にセッションの終了条件について説明します。
    セッションの終了条件には、大きく以下の2つの条件があります。

    • 時間による終了
    • キャンペーンの切り替わりによる終了

    時間による終了

    以下では便宜上、セッションのタイムアウト時間をデフォルト値の30分で説明します。
    セッションのタイムアウト時間を変更したい場合は、既存設定の変更からsession_expire_msecを変更してください。

    Google Analyticsとの仕様差分

    TROCCO Web行動ログ収集SDKでは、Google Analyticsとは異なり、「1日の終りによる期限切れ」は存在しません。

    無操作時間による終了

    前回のPageViewから30分間操作されなかった際に、セッションは終了します。
    30分以上経過した後に新たにPageViewが発生した場合、そのPageViewは新しいセッションに紐付きます。

    イベントによる継続

    前回のPageViewから30分経過する前にイベントが発生した場合、それまでカウントされていたタイムアウト時間は一度リセットされます。
    つまり、直前のイベントから30分操作されなかった際に、そのセッションは終了します。
    そのため、発生間隔が30分以上離れている任意の2つのPageViewがあったときに、それらが同一のセッションとして扱われることは起こり得ます。

    イベントによるPageViewの自動送信

    前回のPageViewまたはイベントから30分以上操作されなかった状態で新たにイベントが発生した場合、PageViewも合わせて取得されます。

    キャンペーンの切り替わりによる終了

    セッションは、異なるページからの流入によって切り替わることがあります。

    image.png

    キャンペーンパラメーターによる判定

    以下に定めるキャンペーンパラメーターが、現在のページのURLに設定されていた場合は、キャンペーンパラメーターによるセッション切り替え判定が行われます。
    たとえば、独自に設定したUTMパラメーターや広告パラメーターなどがキャンペーンパラメーターに該当します。
    なお、現在のページにキャンペーンパラメーターがある場合、流入時のキャンペーンパラメーターとすべて一致した場合は、セッションが継続されます。

    キャンペーンパラメーターの定義

    TROCCO Web行動ログ収集SDKでは、以下のパラメーターがキャンペーンパラメーターとして認識されます。

    • UTMパラメーター
      • utm_source
      • utm_medium
      • utm_campaign
      • utm_content
      • utm_term
    • 広告パラメーター
      • AdWords
      • gclid

    リファラによる判定

    ページビューが発生するたびに、リファラによるセッション切り替え判定が実施されます。

    この際に、まずリファラURLと、セッション開始時の流入URLが比較されます。
    これらのURLが一致する場合、同一サイト内の遷移とみなされ、セッションは継続します。

    上記のURLが異なる場合、リファラURLのホストと、現在のページURLのホストが比較されます。
    これらのホストが異なる場合、基本的には別サイトからの流入とみなされ、セッションは切り替えられます。

    各用語の定義

    以下は、それぞれの用語の定義となります。

    • リファラURL
      • JavaScriptのdocument.refererで取得されるURLです。
    • セッション開始時の流入URL
      • セッション開始がキャンペーンパラメーターによる場合は、セッションが開始されたPageViewでの現在のページURLとなります。
      • そうでない場合は、セッションが開始されたPageViewでのリファラURLとなります。
    • 現在のページURL
      • JavaScriptのlocation.hrefで取得されるURLです。
    • ホスト
      • RFCで定められているURLのホスト部分です。
      • たとえば、https://your-site.com:8080/page/pathというURLの場合、your-site.comがホストです。

    以下は、リファラによるセッション切り替え判定の例です。
    リファラURLホストのyahoo.co.jpと、セッション開始時のURLホストのwww.google.comは異なるため、セッションが切り替えられます。

    閲覧順セッション現在のページURLリファラURLセッション開始時のURLホスト
    1セッションAhttps://n-analytics.com/lp/index.htmlhttps://www.google.comwww.google.com
    2セッションAhttps://n-analytics.com/https://n-analytics.com/lp/index.htmlwww.google.com
    3セッションBhttps://n-analytics.com/lp/index.htmlhttps://yahoo.co.jphttps://yahoo.co.jp

    チャネルの定義

    チャネルとは

    流入経路を識別するラベルです。
    セッション開始時のリファラやランディングページURLから判別され、セッション内の全PageViewで同じ値が保持されます。
    チャネルは以下5つの概念で構成され、かつ階層構造になっています。

    channel_group > medium > source > campaign > keyword

    チャネルの種類説明値の例
    channel_groupGoogle Analyticsの「チャネルグループ」に相当する値です。
    チャネルの最上位概念で、人間が認識しやすい形でチャネルを分類したものです。
    mediumの値によって、すべて自動でグルーピングされます。
    グルーピングの条件については、後述の定義一覧を参照ください。
    Organic Search, Paid Search, Social
    mediumUTMパラメーターのutm_mediumか、自動付与されます。organic, cpc, social
    sourceUTMパラメーターのutm_sourceか、自動付与されます。google, yahoo, facebook
    campaignUTMパラメーターのutm_campaignがあればその値が保存されます。-
    keywordUTMパラメーターのutm_termか、検索系のチャネルの場合は自動付与されます。-

    なお、チャネルは以下の2種類に分けられます。

    • UTMパラメーターによるチャネル
    • 自動付与されるチャネル

    UTMパラメーターによるチャネル

    ランディングページにUTMパラメーターを付与した場合、任意のチャネルを設定できます。
    たとえば、https://your-site.com?utm_medium=Foo&utm_source=Bar&utm_campaign=hogeというURLでランディングした場合、
    それぞれのチャネルの値は以下の通りとなります。

    • medium: Foo
    • source: Bar
    • campaign: hoge
    • keyword: NULL

    自動付与されるチャネル

    有名なSNSや検索サイトなどでは、自動的にチャネルが識別されます。
    定義一覧の付与方法が「自動」となっているチャネルのみ対象となっています。
    なお、自動付与対象の遷移でも、UTMパラメーターがあった場合はそちらが優先されます。

    チャネルの定義一覧

    以下のcsvファイルを参照ください。

    n_analytics_channel_definition.csv

    ログの取得およびログファイルに関する情報

    TROCCO Web行動ログ収集SDKで収集したログは、以下の条件を満たしたタイミングで弊社管理のAmazon S3上に保存されます。

    • 前回の保存から5分が経過したタイミング
    • 収集したファイルサイズが256MBに達した場合

    また、TROCCO Web行動ログ収集SDKのAPIサーバは、負荷分散・冗長化のため常時複数台稼働しております。(サーバー台数は非公開)
    そのため、1回の保存タイミングで、サーバー台数分のファイルが生成されます。
    各ファイル内の行数は保証されませんが、おおよそ均等に分割されます。

    なお、あるタイミングにおいて取得対象となったログファイルの総サイズが「サーバー台数×256MB」を超えた場合は、まず「サーバー台数×256MB」分のログファイルが保存されます。
    そのタイミングでは保存されなかった残りのログファイルは、次回のタイミング(5分後)にて保存されます。

    Single Page Applicationでページ遷移した場合のページビューのトラッキング方法

    ページ遷移のタイミングで、JavaScriptコードの埋め込みで記載している下記コード部分が実行されるように、Webサイト側のJavaScriptに処理を追記してください。

    Nanalytics('setup','<site_id>',(new Date).getTime());
    Nanalytics('send','pageview');
    

    この記事は役に立ちましたか?