我試圖獲取有關我的web應用程序中發生的JavaScript錯誤的信息,並在Google Analytics中使用事件記錄這些錯誤。我這樣做如下:在Google Analytics(分析)中記錄javascript錯誤
$(document).ready(function() {
var sendAnalyticsEvent = function(category, action, label) {
if (window.ga) {
window.ga('send', 'event', category, action, label);
}
};
window.onerror = function(error) {
try {
sendAnalyticsEvent('JavaScript Error', error.message, error.filename + ': ' + error.lineno);
} catch(e) {
}
};
$(document).ajaxError(function(e, request, settings) {
try {
sendAnalyticsEvent('Ajax Error', settings.url, e.result);
} catch(e) {
}
});
});
這是成功觸發的事件(分析)例如:
然而,當我點擊進入「JavaScript錯誤」它不給我任何其他信息,例如應該使用上面的代碼發送的錯誤消息。
任何想法,爲什麼這不是與錯誤一起發送錯誤消息?
編輯
原來我被錯誤地宣告window.onerror功能。以下正常工作:
window.onerror = function (message, source, lineno, colno, error) {
try {
sendAnalyticsEvent('js error', message, source + ': ' + lineno);
} catch(e) {
}
};
這是問題所在,當我點擊它時,錯誤沒有出現,它沒有被記錄。 – lisburnite
你有什麼試圖[調試](https://developers.google.com/analytics/devguides/collection/analyticsjs/debugging)這個?你怎麼知道你實際上發送了正確的數據?沒有更多信息,任何人都無法提供幫助。根據您在問題中所展示的內容,我的建議應該可行。 –
我已經設法得到這個工作,我沒有正確地聲明window.onerror方法,我會用我的解決方案編輯這個問題,但是我會相信你正確的答案,因爲日誌本身應該完成分析異常跟蹤 – lisburnite