C# 比较企业库中的日志应用程序块与Log4net?
有人能比较一下这两种记录机制吗 我在下面给出了一些描述,这些都是直接从该工具的网站上获得的。我更喜欢底部的ELMAH,但是没有花太多时间在Log4Net或日志应用程序块上C# 比较企业库中的日志应用程序块与Log4net?,c#,logging,enterprise-library,C#,Logging,Enterprise Library,有人能比较一下这两种记录机制吗 我在下面给出了一些描述,这些都是直接从该工具的网站上获得的。我更喜欢底部的ELMAH,但是没有花太多时间在Log4Net或日志应用程序块上 支持多种框架 输出到多个日志记录目标 分层日志结构 XML配置 动态配置 日志上下文 经验证的体系结构 模块化可扩展设计 高性能和灵活性 事件日志 电子邮件 数据库 消息队列 文本文件 WMI事件 使用应用程序块扩展点的自定义位置 记录几乎所有未处理的异常 远程查看重新编码异常的整个日志的网页 远程查看任何一个
- 支持多种框架
- 输出到多个日志记录目标
- 分层日志结构
- XML配置
- 动态配置
- 日志上下文
- 经验证的体系结构
- 模块化可扩展设计
- 高性能和灵活性
- 事件日志
- 电子邮件
- 数据库
- 消息队列
- 文本文件
- WMI事件
- 使用应用程序块扩展点的自定义位置
- 记录几乎所有未处理的异常
- 远程查看重新编码异常的整个日志的网页
- 远程查看任何一个已记录异常的完整详细信息的网页
- 在许多情况下,您可以查看ASP.NET为给定异常生成的原始死亡黄屏,即使customErrors模式已关闭
- 每个错误发生时的电子邮件通知
- 日志中最近15个错误的RSS提要李>
- 这已经被写了很多了。以下是一些需要阅读的内容:
我的想法:
- 普遍的共识似乎是log4net的性能更快。这在典型应用程序中是否有意义仍有待讨论
- log4net还支持开箱即用的分层记录器,这很好。EL可以做类似的事情,但你必须自己动手李>
- log4net的配置有点神秘,没有很好的文档记录(IMO)。然而,EL的配置也很麻烦(没有配置工具也很痛苦)。此外,EL为您提供了很多选择,您可能希望在设计上花费一些时间(例如,您是否希望类别与日志记录级别或层、功能区域、或之前的所有类别或其他内容相关?)
我使用了这两个工具,发现它们都很好。这可能会引起兴趣:log4net上的伟大资源:我怀疑它有点偏颇,因为它是由一家商业公司编写的,该公司试图销售他们的日志产品。。。