【问题标题】:Send catched ajax exception back to server to perform logging?将捕获的 ajax 异常发送回服务器以执行日志记录?
【发布时间】:2013-05-07 23:27:14
【问题描述】:

我有一个 MVC3 应用程序,我正在使用 Elmah 将错误存储在 mysql 数据库中,甚至通过电子邮件发送这些错误。这工作得很好,现在我的主布局中有这个 javascript 代码:

$(document).ajaxError(function (e, xhr, settings, exception) {
   //SEND BACK TO SERVER THE EXCEPTION
});

现在,我要做的是获取捕获的异常(ajax 异常)并将其发送回服务器,以使用 Elmah 存储该异常。那可能吗?如果不是,我还有什么选择?

【问题讨论】:

    标签: ajax exception-handling error-handling elmah


    【解决方案1】:

    下面的这篇文章展示了一些关于如何将 JavaScript 错误记录回 Elmah 的很好的指导:

    Logging Errors with ELMAH in ASP.NET MVC 3 – Part 5 – (JavaScript)

    我知道向服务器报告错误的机制是 MVC 特有的,但如果需要,它也应该很容易适应 ASP.NET Web 窗体。

    【讨论】:

    • 这看起来很不错,但我不明白的是,如果您需要尝试捕获以在 js 代码上记录错误?因为我的 js 代码上有一个没有 try/catch 的整个项目。我需要将它添加到整个 js 代码中吗?
    • 不,您不需要添加 try/catch。 javascript 堆栈跟踪代码添加了一个 window.onerror 处理程序,用于捕获任何未处理的错误。在帖子中的示例中,它显示了未处理和已处理(通过 try/catch)的 JavaScript 错误被捕获并记录到 Elmah。
    • 我不敢相信......昨天链接工作正常,今天它坏了......哈哈
    • 太棒了!他们刚刚修复了链接:D
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-23
    • 2010-10-28
    • 1970-01-01
    • 1970-01-01
    • 2014-08-25
    相关资源
    最近更新 更多