c# - ELMAH 像 NLog 一样是异步的吗?

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

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

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

我的两个要求:日志记录必须是异步的并且能够记录到 SQLServer 数据库。我知道我在 NLog 中得到了两者。

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

最佳答案

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

There an Error object is constructed from the Exception and then either ReportErrorAsync or ReportError is called depending on the async setting from the configuration.



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

为邮件模块设置它,将“异步”属性应用于您的邮件配置,例如:
<elmah>
 <errorMail from="support@example.com"
  to="support@example.com"
  subject="Book Reviews Runtime Error"
  async="true" />
</elmah>

关于c# - ELMAH 像 NLog 一样是异步的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30103961/

相关文章:

c# - 使用 LINQ 有什么方法可以做到这一点?

c# - 如何通过 ilnumerics 获得 Moore-Penrose 广义逆

logging - 为什么从Dart Logging_handler包中导入browser_logging_handler失败?

C#: 2D sub-Tile Line 相交

c# - 弹性NEST返回不一致的结果

asp.net - ASP.Net CSS + CSS 语法问题中 Class 与 CSSClass 的区别

c# - 如何在 Windows 服务中托管简单的 ASP.NET Web 界面

asp.net - RadGrid - 过滤文本框,有什么方法可以动态控制它们的宽度?

logging - 用于多行的 Docker Fluentd 日志记录驱动程序

C++ 将格式化数据打印到 std::cout 或文件(缓冲)