log4net配置详解程序员

log4net配置字段说明:

<?xml version="1.0" encoding="utf-8"?> 
<configuration>  
<configSections>  
<section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>  
</configSections>   
<log4net>  
<!--定义输出到文件中-->   
<appender name="SysAppender" type="log4net.Appender.RollingFileAppender">  
<!--日志的路径-->   
<file value="Logs/"/>   
<!--是否覆盖,默认是追加true-->   
<appendToFile value="true"/>   
<rollingStyle value="Composite"/>   
<!--文件名称-->   
<DatePattern value="yyyy-MM-dd HH'时.log'"/>   
<!--设置无限备份=-1 ,最大备份数为1000-->   
<param name="MaxSizeRollBackups" value="1000"/>   
<!--每个文件的大小-->   
<param name="MaximumFileSize" value="500KB"/>   
<!--名称是否可以更改 为false为可以更改-->   
<param name="StaticLogFileName" value="false"/>   
<layout type="log4net.Layout.PatternLayout">  
<!--输出格式-->   
<conversionPattern value="%n【记录时间】%date%n【描述】%message%n"/>  
</layout>  
</appender>   
<!--定义输出到控制台命令行中-->   
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">  
<layout type="log4net.Layout.PatternLayout">  
<conversionPattern value="%n【记录时间】%date%n【描述】%message%n"/>  
</layout>  
</appender>   
<!--定义输出到windows事件中-->   
<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">  
<layout type="log4net.Layout.PatternLayout">  
<conversionPattern value="%n========== %n【日志级别】%-5level %n【记录时间】%date %n【线程编号】[%thread] %n【执行时间】[%r]毫秒 %n【出错文件】%F %n【出错行号】%L %n【出错的类】%logger 属性[%property{NDC}] %n【错误描述】%message %n【错误详情】%newline"/>  
</layout>  
</appender>   
<!--定义输出到Trace中-->   
<appender name="TraceAppender" type="log4net.Appender.TraceAppender">  
<layout type="log4net.Layout.PatternLayout">  
<!--<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />-->   
<conversionPattern value="%n========== %n【日志级别】%-5level %n【记录时间】%date %n【线程编号】[%thread] %n【执行时间】[%r]毫秒 %n【出错文件】%F %n【出错行号】%L %n【出错的类】%logger 属性[%property{NDC}] %n【错误描述】%message %n【错误详情】%newline"/>  
</layout>  
</appender>   
<!--定义日志的输出媒介,下面定义日志以四种方式输出。也可以下面的按照一种类型或其他类型输出。-->   
<root>  
<!--日志的级别 OFF > FATAL > ERROR > WARN > INFO > DEBUG > ALL 只有日志输出级别大于或等于配置的级别才能输出日志信息-->   
<level value="ALL"/>   
<!--文件形式记录日志-->   
<appender-ref ref="SysAppender"/>   
<!--控制台控制显示日志-->   
<appender-ref ref="ConsoleAppender"/>   
<!--Windows事件日志-->   
<!--<appender-ref ref="EventLogAppender"/>-->   
<!--TraceAppender日志-->   
<!--<appender-ref ref="TraceAppender"/>-->  
</root>  
</log4net>  
</configuration>

 

配置示例

<?xml version="1.0"?> 
<configuration> 
<configSections> 
<section name="log4net" 
type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/> 
</configSections> 
<!--站点日志配置部分--> 
<log4net> 
<root> 
<!--控制级别,由低到高: ALL|DEBUG|INFO|WARN|ERROR|FATAL|OFF--> 
<!--比如定义级别为INFO,则INFO级别向下的级别,比如DEBUG日志将不会被记录--> 
<!--如果没有定义LEVEL的值,则缺省为DEBUG--> 
<level value="ERROR"/> 
<appender-ref ref="RollingFileAppender"/> 
</root> 
<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"> 
<!--日志文件名开头--> 
<file value="c:/Log/TestLog4net.TXT"/> 
<!--多线程时采用最小锁定--> 
<lockingModel type="log4net.Appender.FileAppender+MinimalLock"/> 
<!--日期的格式,每天换一个文件记录,如不设置则永远只记录一天的日志,需设置--> 
<datePattern value="(yyyyMMdd)"/> 
<!--是否追加到文件,默认为true,通常无需设置--> 
<appendToFile value="true"/> 
<!--变换的形式为日期,这种情况下每天只有一个日志--> 
<!--此时MaxSizeRollBackups和maximumFileSize的节点设置没有意义--> 
<!--<rollingStyle value="Date"/>--> 
<!--变换的形式为日志大小--> 
<!--这种情况下MaxSizeRollBackups和maximumFileSize的节点设置才有意义--> 
<RollingStyle value="Size"/> 
<!--每天记录的日志文件个数,与maximumFileSize配合使用--> 
<MaxSizeRollBackups value="10"/> 
<!--每个日志文件的最大大小--> 
<!--可用的单位:KB|MB|GB--> 
<!--不要使用小数,否则会一直写入当前日志--> 
<maximumFileSize value="2MB"/> 
<!--日志格式--> 
<layout type="log4net.Layout.PatternLayout"> 
<conversionPattern value="%date [%t]%-5p %c - %m%n"/> 
</layout> 
</appender> 
</log4net> 
</configuration>

 

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/2384.html

(0)
上一篇 2021年7月16日
下一篇 2021年7月16日

相关推荐

发表回复

登录后才能评论