您的位置:首页 > 其它

log4j 按时间、大小产生新的日志文件

2015-12-30 16:59 323 查看
我们开发的B/S结构系统,在服务端一般要有日常运行的日志记录。保存成日志文件形式的时候,大家经常会遇到一个问题:日志文件过大。上百兆的日志文件对 查阅日志信息来说也是一个问题。所以我希望能够每天或每个月产生一个日志文件,这样文件不至于过大。 或者根据日志文件大小来判断,超过规定大小,日志自动增加新文件。 
  在log4j中这两种方式的实现都很简单,只要在配置文件中设置即可。 
   
  一、按照一定时间产生日志文件,配置文件如下: 
    # Set root logger level to ERROR and its only appender to A1. 
    log4j.rootLogger=ERROR,R 
   
    # R is set to be a DailyRollingFileAppender. 
    log4j.appender.R=org.apache.log4j.DailyRollingFileAppender 
   
    log4j.appender.R.File=backup.log 
    log4j.appender.R.DatePattern = '.'yyyy-MM-dd 
    log4j.appender.R.layout=org.apache.log4j.PatternLayout 
    log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n 
     
    以上配置是每天产生一个备份文件。其中备份文件的名字叫backup.log。 www_bitscn_com 
    具体的效果是这样:当天的日志信息记录在backup.log文件中,前一天的记录在名称为  backup.log.yyyy-mm-dd 的文件中。 
    类似的,如果需要每月产生一个文件可以修改上面的配置: 
    将 
     log4j.appender.R.DatePattern = '.'yyyy-MM-dd 
    改为 
      log4j.appender.R.DatePattern = '.'yyyy-MM 
   
  二、根据日志文件大小自动产生新日志文件 
    配置文件内容如下: 
   
  # Set root logger level to ERROR and its only appender to A1. 
  log4j.rootLogger=ERROR,R 
   
  # R is set to be a RollingFileAppender. 
  log4j.appender.R=org.apache.log4j.RollingFileAppender 
   
  log4j.appender.R.File=backup.log 
  #log4j.appender.R.MaxFileSize=100KB 
   
  # Keep one backup file 
  log4j.appender.R.MaxBackupIndex=1 
  log4j.appender.R.layout=org.apache.log4j.PatternLayout 
  log4j.appender.R.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n 
   
   
  其中: 
  #日志文件的大小 
  log4j.appender.R.MaxFileSize=100KB
  # 保存一个备份文件 
  log4j.appender.R.MaxBackupIndex=20

转载地址:http://dananhai.iteye.com/blog/148484
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  日志管理