javascript - 客户端 JavaScript 错误记录

标签 javascript jquery error-handling stack-trace

我的项目包含很多带有表单的页面。这是银行CRM系统的后端,因此工作过程中的任何错误都将被捕获和调查。 在服务器端,我们增强了 java 异常系统,但如果客户端发生错误 - javascript,我们现在得到的唯一信息是 IE 中的 js 错误窗口,或者有时是高级用户制作的页面屏幕截图。

Javascript 代码包含 Jquery 支持的 UI 扩展和硬编码的内联事件处理程序和函数。

所以我想问是否可以使用任何方法来捕获任何类型的 js 错误? 一些额外的库或者可以给我堆栈跟踪的东西,比如 Mozilla 中的 firebug 或 Chrome 中的网络控制台?

最佳答案

查看window.onerror。如果您想捕获任何错误并将其报告给服务器,那么您也许可以尝试 AJAX 请求。

window.onerror = function(errorMessage, errorUrl, errorLine) {
    jQuery.ajax({
        type: 'POST',
        url: 'jserror.jsf',
        data: {
            msg: errorMessage,
            url: errorUrl,
            line: errorLine
        },
        success: function() {
            if (console && console.log) {
                console.log('JS error report successful.');
            }
        },
        error: function() {
            if (console && console.error) {
                console.error('JS error report submission failed!');
            }
        }
    });

    // Prevent firing of default error handler.
    return true;
}

关于javascript - 客户端 JavaScript 错误记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11257330/

相关文章:

javascript - Slick Slider 不显示任何内容

javascript - 展开所有详细信息标签

javascript - 存在未保存的更改时阻止 DropDownList 选择

asp.net-mvc-2 - 在mvc2中创建ModelStateErrorMessage

javascript - Node.js 中的 ENOMEM 由高虚拟内存使用率引起

javascript - AngularJS 绑定(bind)问题

javascript - 拖放 API 存在问题吗?

jquery - 实现 nytimes 风格 "end of article suggestion slider"

linux - 运行 run.sh 时出错(linux)

android - AsyncTask中的错误