GA對ga.js
施加每秒一擊的速率限制。如果我理解正確,那意味着我們可以非常快速地完成所有我們想要的任務,但隊列將保持增長,並且只能慢慢清空,每秒一個事件。如何檢查_gaq是否已清空?
假設我有一個讓瀏覽器離開的按鈕。如果我是偏執狂類型,我如何確保_gaq
在離開之前已被清空(否則某些事件沒有機會發送到GA)?
GA對ga.js
施加每秒一擊的速率限制。如果我理解正確,那意味着我們可以非常快速地完成所有我們想要的任務,但隊列將保持增長,並且只能慢慢清空,每秒一個事件。如何檢查_gaq是否已清空?
假設我有一個讓瀏覽器離開的按鈕。如果我是偏執狂類型,我如何確保_gaq
在離開之前已被清空(否則某些事件沒有機會發送到GA)?
一種可能性 - 用ga.js,你可以將一個函數對象推到_gaq上,這可以用於頁面導航。 (更新:這將不適用於檢測速率限制)
但是... GA速率限制是針對'命中',即命令發送數據到GA。目前還不清楚在達到限制時如何限制 - 如果是通過限制_gaq命令執行,那麼使用函數對象應該可以工作。
另一種可能性是切換到新的Universal Analytics,它允許在處理命中後運行hitCallback函數。此外,速率限制是每秒20 + 2次點擊。
更新: 我只是跑下面的測試在Chrome中,使用的開發工具控制檯和網絡面板:
for (i = 0; i < 20; i++) {
_gaq.push(['_trackEvent', 'test', 'test', 'test', i]);
_gaq.push(function() {console.log(i + ': ' + new Date());});
}
控制檯日誌顯示1秒鐘之內全部20個時間戳。 網絡日誌只顯示前10個跟蹤圖像請求。
我對測試的解釋是GA命令限制'命中'命令是通過丟棄數據來實現的。
什麼可以清除它呢? – Blender 2013-04-24 03:58:43
ga.js的速率限制是10個點擊加上每秒一個 - 你是否真的推動足夠的跟蹤命中來擔心達到極限? – mike 2013-04-24 14:18:28
@mike:正是我爲什麼說「我是偏執型」。說實話,我不知道。我正在重新設計我的網絡應用程序的Google Analytics(分析)跟蹤功能,現在我要離開舊的跟蹤程序,以便在調整新的跟蹤設計時進行平滑過渡。這意味着我可能會發送大約兩倍的跟蹤數據。 – Kal 2013-04-25 02:09:46