【问题标题】:Is ELMAH asynchronous like NLog?ELMAH 像 NLog 一样是异步的吗?
【发布时间】:2015-07-18 04:43:29
【问题描述】:

我正在为我的 ASP.NET Webforms 应用程序寻找一个干净简单的日志记录解决方案。我最近根据NLog tutorial 启动并运行了 NLog。

在完成所有这些设置工作后,我意识到 ELMAH 可能是最简单的解决方案,因为它看起来就是即插即用。

我的两个要求: 日志记录必须是异步的,并且能够记录到 SQLServer 数据库。我知道我可以同时使用 NLog。

那么大多数人是否使用 NLog 之类的东西来处理已处理的异常,而使用 ELMAH 来处理未处理的异常?

【问题讨论】:

    标签: c# asp.net logging error-handling webforms


    【解决方案1】:

    来自https://code.google.com/p/elmah/wiki/TechnicalNotes

    从 Exception 构造一个 Error 对象,然后根据配置中的异步设置调用 ReportErrorAsync 或 ReportError。

    所以,基本上是的,elmah 可以通过电子邮件发送异步或同步错误,具体取决于配置设置“异步”。是的,它还可以写入 SQL 服务器数据库。进一步看源代码,看起来异步实际上可能只适用于邮件模块,而不是日志模块,但我需要仔细观察才能确认。

    为邮件模块设置它,将“异步”属性应用于您的邮件配置,例如:

    <elmah>
     <errorMail from="support@example.com"
      to="support@example.com"
      subject="Book Reviews Runtime Error"
      async="true" />
    </elmah>
    

    【讨论】:

    • 展示如何将其设置为异步与非异步可能会很方便。特别是因为 Google Code 即将消失,您的链接将中断。
    • 那么大多数人是否使用 NLog 之类的东西来处理已处理的异常,使用 ELMAH 来处理未处理的异常?
    猜你喜欢
    • 2011-05-03
    • 1970-01-01
    • 2011-09-30
    • 2018-01-22
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多