我正在研究如何在我的C#应用程序中实现日志记录 - 它是一个DLL类库。哪些日志框架最广泛使用 - 什么会给我的DLL用户最大的灵活性和可配置性?是否存在与log4j等效的C#?
答案 0 :(得分:39)
2009答案: .NET平台的log4j相当于log4net,我猜这是广泛使用的。
2019答案:以下是https://github.com/quozd/awesome-dotnet/blob/master/README.md#logging的各种备选方案:
答案 1 :(得分:6)
在众多项目中成功使用了NLog。
答案 2 :(得分:3)
我们使用自己的日志记录类,通过调用log4net来实现。这使我们可以利用这个灵活且广泛使用的框架,同时避免在源代码中成千上万直接引用它。
答案 3 :(得分:3)
log4net几乎肯定是最常见的。
但是我使用Common.Logging - http://netcommon.sourceforge.net/因为它给了我灵活性
有各种各样的日志记录 .NET当前的实现 使用,log4net,企业库 记录,NLog,名称最多 流行。有缺点 不同的实现是 他们不共享一个共同的界面 因此强加一个特定的 记录对用户的实现 你的图书馆。
Common.Logging库介绍了一个 简单的抽象,让你 选择特定的日志记录 在运行时实现。因此你 可以推迟决定什么特别的 记录库使用直到 部署。适配器用于 插入特定的日志系统 进入Common.Logging。
答案 4 :(得分:1)
我使用NLog多年来取得了成功,这是一个非常完善的项目。
答案 5 :(得分:0)
Enterprise Library.它非常强大,直接来自Microsoft,包括所有最佳实践。我们在所有项目中都使用它。它非常灵活,你可以使用一个UI工具,以防你不想在配置文件中管理日志记录。
答案 6 :(得分:-1)
人们一直在广泛使用企业库。但是,如今开发人员可能会转而使用其他产品。
我会检查一下,看看它是否具备您需要的必要功能,而不是太过臃肿。