我们的一些客户报告他们无法执行某些JavaScript操作。我们的错误数据收集在服务器上,当javascript中断时,我们无法收到通知,因为ajax调用无法在页面刷新之前运行。
有没有办法在客户端收集javascript错误,并在javascript再次正常运行后立即将它们发送到服务器。
示例:
答案 0 :(得分:2)
无需刷新页面即可进行AJAX调用。您只需确保错误处理代码在其自己的脚本标记中,以便在其他代码中出现语法错误时不会中断。
以下是我们用于捕获脚本错误并将其发送到服务器的代码的一部分(AJAX代码采用单独的方法,但我相信您已经知道如何执行此操作):
window.onerror = function (message, url, line, column) {
Ajax.logError(message, url, line, column);
$('body').append($('<div>').addClass('ErrorPanel').text('An error occured in the browser.').delay(5000).animate({ height: 0 }, 2000, function() { $(this).remove(); }));
return false;
};
答案 1 :(得分:-1)
也许你应该看看New Relic。 New Relic是一个用于软件分析的监控工具,它能够向您显示有关JavaScript错误的各种信息(以及更多):