<?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:LogTestLog4net.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>
其中layout节点的配置说明:
%m(message):输出的日志消息;
%n(newline):换行;
%d(datetime):输出当前语句运行的时刻;
%r(runtime):输出程序从运行到执行到当前语句时消耗的毫秒数;
%t(threadid):当前语句所在的线程ID ;
%p(priority): 日志的当前日志级别;
%c(class):当前日志对象的名称;
%L:输出语句所在的行号;
%F:输出语句所在的文件名;
%-10:表示最小长度为10,如果不够,则用空格填充;
%m(message):输出的日志消息;
%n(newline):换行;
%d(datetime):输出当前语句运行的时刻;
%r(runtime):输出程序从运行到执行到当前语句时消耗的毫秒数;
%t(threadid):当前语句所在的线程ID ;
%p(priority): 日志的当前日志级别;
%c(class):当前日志对象的名称;
%L:输出语句所在的行号;
%F:输出语句所在的文件名;
%-10:表示最小长度为10,如果不够,则用空格填充;