2011-08-07 23 views
9

任何人都可以分享谷歌分析代碼故障排除的最佳做法嗎?你怎麼麻煩谷歌分析代碼?

有沒有人建立了一個調試工具?谷歌是否有隱藏在某處的短信?有沒有人有一個良好的分類邏輯圖?

我會定期設置GA的不同部分,而且似乎每次我都需要4或5天的時間才能正常工作。

的工作流程是這樣的:

Read the docs on the feature (e.g. events, custom variables). 
Implement what appears to be the correct code based on the docs. 
Wait a day. 
See no data. 
Google every version of the problem I can imagine. Find what may be a solution. 
Change my code. 
Wait a day. 
See no data. 
Loop: 
    Randomly move elements of the tracking code around. 
    Wait a day. 
    If other parts break, tell ceo, get yelled at, revert changes. 
    If data appears, break. 
Pray it continues to work/I never have to change the tracking code again. 

出於顯而易見的原因,我很不滿意這個工作流程,並希望有人想出了一些我沒有。

+0

沒有。真的是*特定*問題,邀請*精確*答案,所以可能會更好在[http://programmers.stackexchange.com/] –

+0

我要求特定的工具或算法的一般性,但明確的範圍問題。 http://stackoverflow.com/faq「,如果你的動機是」我希望其他人向我解釋______「,那麼你可能就行了。」此外,我提供了我使用的算法,希望其他人可以提供幫助提高上面。 – Ted

回答

11

我所做的一切,調試GA代碼,停止並開始Google Analytics Debugger Chrome Extension。它會向控制檯輸出它發送給Google Analytics的數據摘要,除了測試配置文件過濾器以外,其他所有用途都是您需要的。它會消除「等待一天」的步驟。

如果你不是谷歌瀏覽器的粉絲,你可以自己檢查HTTP請求,看看數據是如何解析的。您可以使用this guide來確定URL中每個參數代表的內容。

在確保我已安裝的功能或代碼本身正常工作的情況下,我將打開一個新的瀏覽器(清除cookie),然後導航到我正在通過Google搜索測試的網站。我將繼續導航到所有相關頁面,並觸發所有相關事件,同時確保將請求發送給Google,並且會話在任何時候都不會中斷(通過保持眼睛對會話計數,或確保流量來源不從有機更改/谷歌直接或自我推薦

截圖:

enter image description here

+0

你在哪裏看的會話ID? – Ted

+0

@Ted對不起,我說的是會話計數。 – Yahel

+0

疑難雜症,你在哪裏取的截圖? – Ted

2

yahelc答案是偉大的,但我d喜歡在這裏添加我的2c。

給自己一個很好的嗅探器,看看命中流動。 尼斯選項:

然後實現在QA更改。

在QA上測試此新設置。你應該注意的事情。

  • 請務必確保基本綜合瀏覽量能夠觸發。它至少應該有一個utmp值,並且不應該有utmt集。
  • 確保訪問者ID不會被覆蓋。這是__utma cookie上的第二個數字。這個數字應該是你的用戶名,如果它改變了,那麼事情就會被破壞。
  • 確保您的瀏覽量包含您設置的頁面和會話變量。如果你設置任何。它們被編碼到參數utme中。
  • 確保在您的基本網頁瀏覽之前觸發任何訪客自定義var。 utmt=custom variable
  • 確保源數據不會被覆蓋(運動/中/源/內容/關鍵字) - 這些都是在__utmz的cookie設置。如果它被直接或您自己網站的推薦覆蓋,則會出現問題。
  • 如果你錯過了可能是由於一個reqired場丟失或最後一個值是一個float或字符串的任何事件。事件的值必須是整數。
  • 如果您使用ecomerce,請仔細檢查您的所有參數。確保你在這裏發射了所有的字符串,並且未使用的參數是空字符串。
  • 三重檢查您的帳號。 UA-XXXXX-X
  • 如果您的自定義JS做的事情請務必測試所有的瀏覽器,並試圖讓您所處確保事情不會破壞安全區至少基本的跟蹤。
  • 發送有關可能會將GA遺傳給GA的JavaScript代碼的調試信息。 Check this
5

首先,這個答案與我之前的兩個答案中的任何一個的任何部分都不相抵觸 - 即,你當然可以實現它們都沒有衝突。

我的回答只是反映了我自己的優先級,這是延遲問題。 延遲使調試遠比應該更困難。在等待編譯器結束時十分鐘的延遲令人不快,四小時(最小的GA延遲)是痛苦的。

所以對我來說,在構建GA去竊聽框架的第一步是莫名其妙獲得實時 --in換句話說,如果我換了一個正則表達式過濾器,我需要的結果GA捕獲該過濾器處理的流量。因此,從GA服務器獲取結果的4-24小時延遲是非常關鍵的。

做到這一點到目前爲止,我已經找到了最簡單的方法是修改網站的每個頁面上的GA跟蹤代碼,以便它發送每個GIF請求的拷貝發送到您自己的服務器

要做到這一點,馬上打電話給trackPageview的()之前,加入這一行:

pageTracker._setLocalRemoteServerMode(); 

這將整個請求頭髮送到您的服務器訪問日誌,您可以解析在即時的。 (具體來說,您的服務器在同一時間寫入訪問日誌一條線 - 一條線路相當於一個請求所有GA數據被打包並設置爲請求頭,所以有兩個之間的完美重合

+1

不錯。 +1爲一個聰明的把戲。 – Yahel

+0

將請求發送到您自己的服務器,以便您可以在日誌文件中看到請求似乎是矯枉過正。只需使用Charles或Chrome或任何其他Web調試工具來查看請求參數。 – PPrice

+0

不發送它們到服務器訪問日誌允許我使用我當前的工具解析它們(我已經爲其他目的解析這些日誌),並且數據不僅限於單個瀏覽器 - 重要的是,許多網頁指標中的噪音是由於他們解析DOM的方式不同造成的。 – doug