http://logging.apache.org/log4net/release/features.htmlhtml
log4net的是一个工具,帮助程序员输出日志报表的各类输出目标。如遇问题,一个应用程序,它有助于启用日志记录,这样的问题能够被找到。用log4net的,能够启用日志记录在运行时无需修改应用程序的二进制文件。 log4net的包被设计成使得日志语句能够留在运送代码,而不会产生高的性能成本。因而可知记录(或者更确切地说,没有记录)的速度是相当重要的。
同时,日志输出能够如此浩繁,它很快变得势不可挡。其中一个log4net的不同凡响的特色是分层记录仪的概念。使用这些记录器可以选择性地控制哪些日志语句是在任意粒度的输出。
log4net的是设计时考虑到两个不一样的目标:速度和灵活性程序员
支持多种框架数据库
log4net的运行在全部ECMA CLI1.0兼容的运行环境。 log4net的具备特定版本如下的框架:apache
log4net的附带如下附加目的地(不是全部框架):编程
日志类型 | 类型描述 |
log4net.Appender.AdoNetAppender | 写入事件日志使用或者准备好的语句或存储过程的数据库。 |
log4net.Appender.AnsiColorTerminalAppender | 写颜色突出显示事件记录到一个ANSI终端窗口。 |
log4net.Appender.AspNetTraceAppender | 写日志记录事件到ASP跟踪上下文。这些而后能够在ASP页的端部或在ASP跟踪页面上呈现。 |
log4net.Appender.ColoredConsoleAppender | 写颜色突出显示事件记录到应用程序的Windows控制台。 |
log4net.Appender.ConsoleAppender | 写记录事件到应用程序的控制台。该事件可能会被定位到了咱们的标准流或标准错误流。 |
log4net.Appender.DebugAppender | 写记录事件到.NET系统。 |
log4net.Appender.EventLogAppender | 写日志记录事件到Windows事件日志。 |
log4net.Appender.FileAppender | 写入记录事件来在文件系统中的文件。 |
log4net.Appender.LocalSyslogAppender | 写入事件日志到本地syslog服务(仅限UNIX)。 |
log4net.Appender.MemoryAppender | 存储记录事件在内存中的缓冲区。 |
log4net.Appender.NetSendAppender | 写记录事件到Windows Messenger服务。这些信息显示在一个用户终端的对话框。 |
log4net.Appender.OutputDebugStringAppender | 写日志事件的调试器。若是应用程序没有调试,系统调试器显示的字符串。若是应用程序没有调试和系统调试器处于非活动状态,该消息被忽略。 |
log4net.Appender.RemoteSyslogAppender | 写使用UDP网络记录事件到远程syslog服务。 |
log4net.Appender.RemotingAppender | 写入事件日志使用.NET远程处理一个远程接收器。 |
log4net.Appender.RollingFileAppender | 写入记录事件来在文件系统中的文件。的RollingFileAppender进行可配置为登陆到基于日期或文件大小约束的多个文件。 |
log4net.Appender.SmtpAppender | 将事件记录到的电子邮件地址。 |
log4net.Appender.SmtpPickupDirAppender | 将事件记录到一个电子邮件地址,但该邮件写入到配置目录,而不是直接经过SMTP发送它们。 |
log4net.Appender.TelnetAppender | 客户端经过Telnet链接到接收日志记录事件。 |
log4net.Appender.TraceAppender | 写记录事件到.NET跟踪系统。 |
log4net.Appender.UdpAppender | 发送记录事件无链接的UDP数据报给远程主机或使用UdpClient的一个组播组。 |
特别log4net.Appender.ForwardingAppender可用于包装其余附加器,例如附加额外的过滤器。网络
分层记录是再合适不过与基于组件的开发。每一个组件都有本身的记录仪。当单独测试,这些记录仪的性能能够为开发人员须要进行设置。当与其它成分结合时,记录器继承了部件的积分所肯定的属性。一个能够有选择地提升记录优先于一个组件,而不会影响其余组件。当你须要的只是一个单一的部件进行详细的跟踪不拥挤的跟踪文件与其余组件的消息,这是颇有用的。全部这能够经过配置文件来实现;没有须要修改代码。
架构
log4net的是使用XML配置文件来配置。的配置信息能够在其余XML配置文件(如应用程序的.config文件),或在一个单独的文件被嵌入。配置是很容易读取和更新,同时保留来表达全部配置的灵活性。
另外log4net的能够经过编程设置。框架
log4net的能够监视其更改的配置文件,并动态地应用由配置所作的更改。日志记录级别,追加器,布局,以及几乎一切能够在运行时调整。在许多状况下,能够不终止过程当中的问题进行诊断应用的问题。这能够在调查与部署应用程序的问题很是有价值的工具。模块化
log4net的可用于收集记录的上下文数据的方式,是透明的显影剂在记录的点。该GlobalContext中和ThreadContext容许应用程序存储附加到日志消息上下文数据。例如,在Web服务中,一旦调用者被验证呼叫者的用户名可被存储在一个ThreadContext属性。此属性将被自动记录为来自同一个线程所作的每个后续日志消息的一部分。工具
log4net的是基于很是成功的Apache™的log4j日志库,在发展自1996年以来这种流行和成熟的架构,迄今已被移植到12种语言。