是否有一些实现日志记录功能的类,我可以使用?

问题描述:

我需要在我的应用程序中使用记录器。 我在.net框架中寻找一些我可以用于此目的的类 - 并且我没有找到。是否有一些实现日志记录功能的类,我可以使用?

在.net框架中有一些准备好的库,我可以用它来组织简单的日志吗?

当你在寻找的框架,你没有看到或不喜欢System.Diagnostics.Trace [1]的框架?

正如已经提到的log4net [2]是一个很好的框架,我们广泛使用它。您也可能对Castle Windsor IoC框架中的Log工具感兴趣[3]。

[1] http://msdn.microsoft.com/en-us/library/system.diagnostics.trace.aspx

[2] http://logging.apache.org/log4net/

[3] http://www.castleproject.org/container/facilities/trunk/logging/index.html

elmah是不错的选择,请

和log4net的是另一个 http://www.codeproject.com/KB/aspnet/Log4Net_Configuration.aspx

有很多这种第三方库。例如,请查看log4net

但是,如果你只想写一些文件到行,那么创建一个你写入的文本文件就足够了。在这种情况下,您可以使用System.IO.File.CreateText(filename)获取您可以登录的StreamWriter。然后使用StreamWriter.WriteLine写入日志。最后,您应该在完成日志记录时关闭StreamWriter

将一个TraceListener添加到您的app.config并使用System.Diagnostics.Trace.WriteLine写入日志。

你可以有单独的侦听器写入到一个文本文件,事件日志等

NLoglog4net是最流行的。我主要与NLog合作,对此非常满意。这些日志框架允许您为日志定义不同的规则和目标,在运行时更改这些规则和目标(例如,用于在生产环境中调试应用程序)以及使用反射,以便您的日志消息可以包含诸如类的名称日志来源于。