追跡サービス
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Headless Servicesが提供するトラッキングサービスは、クライアント側の行動に基づいてSitecore分析イベントをxDBにプッシュできる分析トラッキングREST APIです。デフォルトではイベント、目標、アウトカム、キャンペーン、ページ/ルートビューの追跡をサポートしており、高度なトラッキングニーズに応じて拡張可能です。
セットアップ
トラッキングサービスはインストールされていますが、Sitecore Headless Servicesをインストールする際に デフォルトで無効になります。
トラッカーを有効にするには、例えば構成パッチファイルでSitecore.JSS.TrackerServiceEnabled設定をtrueに設定してください。
トラッカーは他のサービスと同様にSSC APIキー を利用しています。APIキーはトラッカーのCORSサポートを可能にします。各アプリに1つのAPIキーを使うのが良い習慣ですが、すべてのサービスで同じAPIキーを使うことができます。
トラッキングイベント
エンドポイント /sitecore/api/jss/track/event?sc_apikey=keyを使ってイベントを追跡できます。
エンドポイントはJSONのペイロードでPOSTリクエストを受け入れます。
以下の表は追跡可能なイベントの種類と、トラッキングサービスエンドポイントに送信すべきペイロードを示しています。
- イベントタイプ
- 目標:
{
"goalId": "
- 結果:
{
"outcomeId": "
- ページイベント:
{
"pageId": "
- キャンペーン:
{
"campaignId": "
- イベント:
{
"eventId": "
!ヒントJSSアプリケーションを開発している場合、JSS Tracking APIを利用できます。
連絡先および追跡データのインデックス化と閲覧
トラッキングコードによってプッシュされたデータは エクスペリエンスプロファイルで確認できます。
デフォルトでは、Sitecoreは匿名の連絡先データをインデックス化しないため、非特定ユーザーのデータはエクスペリエンスプロファイルに表示されません。テスト結果をより効率的に確認するには、匿名連絡先のインデックス化を有効にすることができます。
!重要本番環境での匿名連絡先のインデックス化は推奨しません。
トラッカーサービスは最初から 連絡先の特定 をサポートしていませんが、拡張は可能です。
Sitecore、ユーザーセッション終了前にトラッキングデータをExperience Profileに保存またはインデックス化しません。ユーザーセッションを終了するには、エンドポイントを呼び出し /sitecore/api/jss/track/flush。
トラッカーの拡張
トラッカーは追跡データの導管であり、必要に応じて拡張します。App_Config\Sitecore\JavaScriptServices\Sitecore.JavaScriptServices.Tracker.configで定義されたtrackEventパイプラインは、受信する追跡リクエストを処理する役割を担います。
構成パッチを使って、新規または交換したパイプラインプロセッサを含めることができます。
プロセッサはSitecore.JavaScriptServices.Tracker.Pipelines.TrackEvent
パイプラインプロセッサTrackEventメソッドは以下の条件を満たす必要があります:
- 受信リクエストを処理できない場合はリターンします。他の操作なしにパイプラインプロセッサに戻ると、パイプラインは再開され(次のプロセッサへ続きます)。
- もし受信リクエストを処理できるなら、 args.HasBeenTracked() を呼び出してパイプラインを中止します。パイプラインを中止すると、すでにいくつかのアクションが取られている可能性があるため、さらなる処理が停止されます。
- リクエストを処理 できる がエラーが発生した場合は args.ReportError() 呼び出して戻します。