.NET日志框架

在java世界中你有log4j和一个相当不错的日志框架,C#/ .NET有什么类似的吗?

log4net将是明显的答案。

http://www.nlog-project.org/ – NLog

它是一种非常灵活且可配置的日志工具,非常轻便。 您可以将其设置为记录到许多不同的位置(控制台,SQL,文件等)。 非常好用。

它甚至被Rob Connery用于他的Storefront MVC项目…… http://blog.wekeroad.com/mvc-storefront/

如果你正在寻找一个简单的非膨胀解决方案(下载只有大约100K,实际的dll约为40K),我已成功在许多项目中使用了BitFactory 。

它小巧,可配置,可靠且免费!

尝试使用Enterprise Library Logging Application Block

虽然我也使用过这里提到的其他几个 – 但值得研究。

还有nLog ,它非常相似,但更轻巧,配置更少。

这里的评论似乎与Developer Dude和nzpcmad一致,我也一样。使用Bit Factory,也称为Object Guy的Logging Framework 。

正如我在其他几个地方所说的那样,我在此同意其他人关于The Object Guy的Logging Framework 。 就像开发人员杜德所说的那样,它并不臃肿 – 就像其他一些框架一样。 它适用于我们所有的生产应用程序 – 并且已经这样做了好几年了。

我们一直使用MS P&P企业库记录应用程序块。 它并不特别酷或优雅,但它非常灵活,设计精良。 我认为我们使用它的主要原因是我们使用EL中的许多其他组件,它们当然都依赖于日志记录模块。 更多信息在这里。

毫无疑问,试试: 这个 。 放下手,这是大多数应用程序的最佳选择。 它不是英国媒体报道。

是的。 Log4Net 。

我已经使用了一段时间,它一直是一个救生员!

NLog是个不错的选择。

我仍然说Log4Net是一个更安全的选择。 许多其他开源项目也使用它,如果你曾经包含它,那么你只是减少了依赖。

Windows事件日志+ 日志分析程序无法为您执行任何操作吗?

查看TraceSources和TraceListeners。 它内置于.NET中,并使用配置文件进行配置。

James Newton-King大约一年前介绍了log4net与Enterprise Library Logging ,我认为它仍然在很大程度上是最新的。 我的经验仅限于EL,它有起伏。 如果你没有利用每一个铃声和哨子,那么在多层应用程序中有很多配置,所以我可能会在我的下一个项目中尝试log4net。

实际上,如果您不需要开箱即用的复杂日志记录选项,我建议您编写一个定义日志记录需求的精简界面(例如log.debug(),log.error()等)。 如果您需要更改后者或查找当前实现的问题,这将为您提供灵活性。

虽然这看起来并不是一个巨大的收获,但是当我们将框架移植到Windows Compact Framework时,这对我们来说是一个巨大的胜利,并且没有一个日志选项有效。 我们能够在空记录器中滑动,从而将我们保存在该平台上。 当然,评估您的具体项目和需求。