/*
* 为了能收集更多的错误,建议在页面一开始就引入并初始化构造函数
*
* 浏览器错误日志自动收集方案
* 能及时发现偶现性、隐蔽性、不同手机终端兼容性的错误,在修复的时候可作为重要的排查依据。
* { callback } callback 日志回调处理函数, 回调参数:errorMsg, url, lineNumber, columnNumber, errorObj
*/
function Log(callback) {
window.onerror = function (errorMsg, url, lineNumber, columnNumber, errorObj) {
jsMonitorStarted = true;
var errorStack = errorObj ? errorObj.stack : null;
typeof callback === 'function' && callback(errorMsg, url, lineNumber, columnNumber, errorStack);
};
var oldError = console.error;
console.error = function (errorMsg) {
typeof callback === 'function' && callback(errorMsg, location.href, 0, 0, {
"CustomizeError": "CustomizeError: No error stack"
});
return oldError.apply(console, arguments);
};
window.onunhandledrejection = function (e) {
var errorMsg = "";
if (typeof e.reason === "object") {
errorMsg = JSON.stringify(e.reason);
} else {
errorMsg = e.reason;
}
typeof callback === 'function' && callback(errorMsg, location.href, 0, 0, {
"CustomizeError": "CustomizeError: No error stack"
});
}
}
Log(function () {
console.log(arguments)
})
vue项目中所有错误的收集
最新推荐文章于 2024-08-06 10:45:09 发布