log4net⽇志过⼤⾃动分割
<appender name="RollingLogDebugFileAppender" type="log4net.Appender.RollingFileAppender">
大文件发送<!--定义⽂件存放位置-->
<file value="Log\\Alarms\\"/>
<appendToFile value="true"/>
<rollingStyle value="Composite"/>
<preserveLogFileNameExtension value="true"/>
<datePattern value="yyyy\\yyyyMM\\yyyyMMdd\\yyyyMMdd HHmm\\yyyy-MM-dd HH'点.txt'"/>
<staticLogFileName value="false"/>
<param name="MaxSizeRollBackups" value="-1"/>
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<maximumFileSize value="10MB" />
<filter type="log4net.Filter.LevelRangeFilter">
<levelMin value="Info" />
<levelMax value="Info" />
</filter>
<layout type="log4net.Layout.PatternLayout">
<!--每条⽇志末尾的⽂字说明-->
<!--输出格式-->
<!--样例:2008-03-26 13:42:32,111 [10] INFO Log4NetDemo.MainClass [(null)] - info-->
<conversionPattern value="%newline %n%date: %message%newline %n"/>
</layout>
</appender>
下⾯就⼏个重要设置项进⾏说明:
1.
<rollingStyle value="Composite"/>
此处不能设置为static
2.
<preserveLogFileNameExtension value="true"/>
这个保证在⽇志分割时,新⽇志的序号会添加在后缀名之前,如
⽽不是
<1
3.
<param name="MaxSizeRollBackups" value="-1"/>
其值⼤于0时,⽇志超过指定数量后,会⽣成新⽂件,旧⽂件会按顺序被删除( Framework4.0中有bug,就⽂件删除不掉);
其值等于0时,⽇志超过指定⼤⼩后,就不再记录
其值⼩于0时,⽇志不限定个数。
注意,此个数的限定为单个⽂件夹中⽂件个数的限制。当⼀个⽂件夹的⽂件个数过多时,会严重影响程序⽇志程序的性能。所以,单个⽂件夹中⽇志个数不宜过多。当单个⽂件夹中⽇志过多时,要考虑分⽬录。可通过设置
<datePattern value="yyyy\\yyyyMM\\yyyyMMdd\\yyyyMMdd HHmm\\yyyy-MM-dd HH'点.txt'"/>
来分⽬录。
4.
<maximumFileSize value="10MB" />
单个⽂件的最⼤⼤⼩,超过这⼀⼤⼩时,⽂件会被分割。
但是这不会将单个字符串分割到两个⽇志⽂件中去。如果⼀个字符串11MB,那单个⽂件就是11MB,不会把该字符串的前10MB放⼀个⽇志⽂件,后1MB放另⼀个⽇志⽂件。
发布评论