サーバー側のデータをGoogleAnalyticsに送信する方法は実際には2つあります。標準的な方法はGIFImageRequest APIです。これは、ga.jsがクライアント側で使用するのと同じAPIです。GoogleはMeasurementProtocolと呼ばれる新しいRESTAPIの開発を開始しましたが、これは開発者向けのプレビューのみです。
サーバーサイドGA
サーバー側のデータをGAに送信しようとする場合、解決すべき問題がいくつかあります。
上で指摘した@mehaaseのように、gif APIはリクエストからIPアドレスを取得するため、サーバー側のリクエストはすべて、サーバーの場所からのユーザーとして表示されます。測定プロトコルでは、リクエストのIPを変更することもできません。この回答では、公開されているgifAPIを想定しています。
もう1つの問題は、gifエンドポイントにクライアント側のCookieが必要なことです。リクエストごとにこのCookieを偽造することができますが、これにより、各イベントが新しい訪問者のように見えます。サーバー側のAPIとウェブサイトを別々のGoogleAnalyticsプロファイルに保持している限り、これで問題ありません。
また、イベントを送信してからGoogleがイベントを表示するのに最大1時間かかる場合があることにも注意してください。これにより、デバッグが少し面倒になる可能性があるため、しばらくお待ちください。
GA Cookieの各変数の意味の内訳と、サーバー側のデータをGAに送信する優れたnode.jsの例を次に示します。
その他のイベント追跡オプション
GAはウェブサイトの指標を追跡するのに優れていますが、サーバー側のイベントを追跡するために構築されたものではありません。イベントトラッキングと呼ばれる分析のカテゴリは、RESTfulAPI使用状況トラッキングに最適なアプリケーションです。
APIは一般的に次のようになります。
analytics.track('API Response', {
method : 'POST',
endpoint: '/comments'
duration: 124
status : 500
});
また、各イベントとイベントプロパティの頻度と分布に関するレポートを表示できます。次のような質問に答えることができます。今日、API呼び出しがいくつ発生しましたか。200代は何人でしたか?200msを超える応答があったのはいくつですか?等
これを行うのに役立つイベント追跡ツールを次に示します。
- ミックスパネル
- KissMetrics
- Keen.IO
私は、クライアント側、サーバー側、およびモバイル分析用のシンプルなAPIを提供する会社であるSegment.ioの共同創設者です。python、php、ruby、node、java、.net、javascript、iOSからデータを送信できます。データは、Google Analytics、Mixpanel、KissMetrics、Keen.IO、またはその他のサポートされているサービスに転送されます。あなたは彼らのAPIを学ぶ必要があります。
そして最後に、イベント追跡が役立つ理由を説明する分析アカデミーの記事があります。