簡體   English   中英

谷歌分析服務器端跟蹤

[英]google analytics serverside tracking

我正在嘗試跟蹤移動應用程序的使用,該應用程序從用PHP編寫的數據源獲取數據。 所以我目前正在使用這個腳本。

http://code.google.com/p/serversidegoogleanalytics/

但對我來說最重要的是在谷歌分析中查看用戶的位置。 但這似乎不可用。

有人能做到這一點。

我創建事件,如網站上的示例所示,但訪問者的位置始終設置為美國,我相信這就是我的服務器所在的位置。

編輯 :我以前的回答有點不正確。 我修改了它。

通常,Google Analytics不會自行明確傳遞位置信息; 相反,它依賴於用戶的IP地址。 也就是說,當Google Analytics向Google Analytics“發送”數據時,它向Google Analytics服務器發出HTTP請求,並使用請求代理的IP地址來確定位置。 (同樣的方法用於確定用戶的瀏覽器,因為HTTP請求將User-Agent標頭發送到Google的服務器。)

但是,事實證明,在官方Google Analytics for Mobile庫中 ,有一個特殊參數utmip,您可以通過該參數來模擬此行為並為您提供正確的地理位置報告。 您可以下載該庫以查看如何在PHP中實現它(它似乎不會傳遞整個IP地址。)

看來,為了使用此功能,您必須將您的帳戶名稱傳遞為MO-XXX-X,而不是UA-XXX-X

提醒:在下面給出的服務器端代碼段中,將您的Google Analytics網絡媒體資源ID上的前綴從UA-更改為MO-。 例如,如果您的網絡媒體資源ID為UA-12345-67,則可以在服務器端代碼段中使用MO-12345-67。

他們的PHP庫還顯示了如何欺騙用戶代理以匹配用戶代理,以便您可以收集相關的瀏覽器信息。

查看http://code.google.com/p/php-ga ,這可能是GA最強大的服務器端實現庫。 它也解決了這個問題: http//code.google.com/p/php-ga/issues/detail?id = 9

我已經調整了代碼google供應以嘗試發送請求用戶的IP地址,所以類似於:

// Construct the gif hit url.
string utmUrl = utmGifLocation + "?" +
    "utmwv=" + Version +
    "&utmn=" + GetRandomNumber() +
    "&utmhn=" + HttpUtility.UrlEncode(domainName) +
    "&utmr=" + HttpUtility.UrlEncode(documentReferer) +
    "&utmp=" + HttpUtility.UrlEncode(documentPath) +
    "&utmac=" + account +
    "&utmcc=__utma%3D999.999.999.999.999.1%3B" +
    "&utmvid=" + visitorId +
    //"&utmip=" + GetIP(Request.ServerVariables["REMOTE_ADDR"]);
    "&utmip=" + GetIP(Request.UserHostAddress);

SendRequestToGoogleAnalytics(utmUrl);

但在谷歌分析中,我只看到托管服務器在德國而不是最終用戶的位置。

有誰知道utmip是否仍在工作/支持? 它似乎只是使用上面代碼運行的IP地址而不是我傳遞的請求者的IP地址。

(PS - 我已經檢查過並使用正確的MO - ????跟蹤ID)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM