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

最新文章

  1. jQuery事件绑定.on()简要概述及应用
  2. apache和nginx
  3. 《python核心编程》读书笔记——列表解析
  4. MySQL drop、delete和truncate的区别
  5. 公钥与私钥,HTTPS详解
  6. 【MySQL】PREPARE 的应用
  7. AppCompat学习(1)-AppCompatSpinner
  8. 两次fclose引发的血案
  9. solr的安装与配置
  10. regress_partition.sql
  11. zabbix 3.2 高可用实现方式二-pacemaker+corosync实现zabbix高可用集群
  12. Oracle的sql导入
  13. Bootstrap洼地
  14. 关于Mysql安装启动的若干问题解决
  15. go语言学习--指针数组和数组指针
  16. jquery轮播图片(无插件简单版)
  17. js如何用json 读取C#的Dictionary
  18. Swiper测试
  19. 解决CentOS安装redis局域网内无法访问的问题
  20. 怎样安装解压版MySQL

热门文章

  1. SpringMvc配置扫包之后,访问路径404问题解决
  2. 配置Activiti Explorer使用MYSQL
  3. slf4j的java包冲突问题
  4. windows的cmd下的find命令比bash(win10下的Ubuntu的bash)下的grep比较
  5. [转帖]论iPhone处理器十年进化史
  6. Angular 添加路由
  7. 解决Ubuntu中vi命令的编辑模式下不能正常使用方向键和退格键的问题
  8. 如何使用grep 等命令快速的在日志中找到自己需要的内容
  9. VS2008中英文转换
  10. 捕捉JDialog的关闭事件