Log4net(三)——RollingFileAppender配置

时间:2022-10-16 23:28:58

RollingFileAppender配置

log4net的记录介质很多,这里只总结最常用的方式之一:RollingFileAppender。

1.日志文件名是以文件大小进行变换的

  如果日志文件大小到100KB时,就会变换文件名为log.txt.1,log.txt.2,log.txt.3...,后边的数字越大,记录越早,一直到10为止,最新的文件名为一直log.txt。

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<!--日志文件名-->
<file value="F:/log.txt"/>
<!--是否在文件中追加,设为false则去将以前的记录覆盖-->
<appendToFile value="true"/>
<!--按照文件的大小进行变换日志文件-->
<rollingStyle value="Size"/>
<!--最大变换数量-->
<maxSizeRollBackups value="10"/>
<!--最大文件大小-->
<maximumFileSize value="100KB"/>
<!--日志文件名是否为静态-->
<staticLogFileName value="true"/>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline"/>
</layout>
</appender>

2.备份的日志文件名以时间命名

  在F:/log/文件夹下,当前的日志名为:At_20180808-1247.log,上一分钟备份的名字At_20180808-1246.log 表示2018年8月8日,12点46分,每分钟备份一次

 <appender name="滚动文件输出" type="log4net.Appender.RollingFileAppender">
<file value="F:/log/At_" />
<appendToFile value="true" />
<rollingStyle value="Date" />
<datePattern value="yyyyMMdd-HHmm'.log'" />
<staticLogFileName value="false" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>

3.时间和大小混合的方式

  在F:/log/文件夹下,当前的日志时At_20180808-1252.log,这分钟内大小超过2kb时备份为At_20180808-1252.log.1;...,上一分钟日志名为: At_20180808-1251.log , 备份名字为:At_20180808-1251.log.1; ....

 <appender name="滚动文件输出" type="log4net.Appender.RollingFileAppender">
<!--日志文件名开头-->
<file value="F:/log/At_" />
<!--是否追加到文件-->
<appendToFile value="true" />
<!--混合使用日期和文件大小变换日志文件名-->
<rollingStyle value="Composite" />
<!--日期的格式-->
<datePattern value="yyyyMMdd-HHmm'.log'" />
<!--最大变换数量-->
<maxSizeRollBackups value="100" />
<!--最大文件大小-->
<maximumFileSize value="2kB" />
<staticLogFileName value="false" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>

更多内容参考官网:http://logging.apache.org/log4net/release/config-examples.html