首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >log4net和ELMAH有什么不同?

log4net和ELMAH有什么不同?
EN

Stack Overflow用户
提问于 2011-02-20 22:42:00
回答 5查看 38.5K关注 0票数 109

有些人正在使用ELMAH而不是log4net。是什么让它变得更好?

我在an answer to Stack Overflow question 发现了ELMAH

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-02-20 23:19:30

ELMAH用于跟踪web应用程序的错误和异常,并允许您通过许多不同的机制(SQL、RSS、Twitter、文件、电子邮件等)轻松地记录或查看这些异常。如果你没有内置的异常处理,ELMAH很可能会在web应用程序环境中得到你想要的异常处理。

Log4net也可以用于异常日志记录,但是您可能需要使用自己的处理程序来插入您的web应用程序。如果您需要做其他类型的信息日志记录,Log4net将优于ELMAH,因为log4net是一个通用的日志记录框架。几乎在任何.NET应用程序中都可以使用Log4net。

票数 92
EN

Stack Overflow用户

发布于 2011-02-20 23:51:04

关键区别在于,ELMAH记录未处理的应用程序异常;log4net记录您告诉它记录的任何内容。您可以将log4net配置为记录未处理的异常,但它捕获了大量开箱即用的有用信息。

票数 36
EN

Stack Overflow用户

发布于 2011-02-21 03:06:45

ELMAH的工作原理是创建一个HTTP模块,该模块挂钩到错误事件中,然后执行日志记录。这很容易被糟糕的设计所阻挠和破坏。Log4Net可能需要额外的前期工作,但如果您使用面向方面编程框架,并将其应用于您的类甚至整个程序集,那么您可以用很少的代码和精力实现更好的异常日志记录。

ELMAH只有在可以访问HttpContext的情况下才能工作,而这在WCF服务中很难实现。所以不管怎样,你最终会在WCF中使用其他的记录器。为什么不使用一种更通用的解决方案呢?

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5057674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档