8

好吧,我是 .net 的新手,我一直在寻找一些可用于 c# 的日志工具。我发现,Apache Foundation 创建的 TraceListener 和 Log4Net,即使在大型项目中也有非常广泛的用途。但这两者之间的主要区别是什么?Log4Net 的优势是什么?在什么情况下我应该使用 Log4Net 以及 TraceListener 在哪里?

包括,Log4Net 和 TraceListener 的缺点是什么?他们的断点是什么?

4

2 回答 2

6

TraceListener 是 .NET 中默认日志记录实现的一部分。虽然这可以很好地查看您的应用程序正在做什么(在开发过程中非常有用),但 log4net 在日志输出方面提供了更大的灵活性。log4net 允许您配置日志输出的位置(例如:文件、事件日志等),并允许您微调您希望看到的日志记录。

例如,您需要更多关于开发和测试环境的诊断信息,而您只对验收和生产环境中的警告和致命错误感兴趣。使用 log4net,您可以简单地配置要记录的内容,并且可以在部署应用程序后随时更改。

于 2013-12-04T11:00:34.240 回答
3

这是 System.Diagnostics、log4net、nlog 和 Enterprise 库的一个很好的比较:

https://github.com/sgryphon/essential-diagnostics/blob/master/docs/Comparison.md

于 2014-09-11T17:21:15.180 回答