log4j.appender.A2=org.apache.log4j.RollingFileAppender
log4j.appender.A2.file=d:\\log\\dbTools\\contrastdebug.log
log4j.appender.A2.Threshold=DEBUG
log4j.appender.A2.MaxFileSize=10KB
log4j.appender.A2.MaxBackupIndex=1
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-4r %-5p [%t] %37c %3x - %m%n
现在是配置当文件到达10KB,会重新生成一个日志文件。名称为contrastdebug.log.1.但是我还想实现另一个功能,当到了第二天,前一天的日志会自动备份为contrastdebug.log.1.YY.MM.DD但是RollingFileAppender并不支持log4j.appender.A2.DatePattern='.'yyyy-MM-dd这个配置项,可怎么办啊?而且配置的是10KB,实际是11KB才备份的。咋回事啊?高手帮忙啊。

解决方案 »

  1.   

    http://tomlt.spaces.live.com/Blog/cns!AEB3E53EB4D7B7C1!625.entry
      

  2.   

    http://sw1982.javaeye.com/blog/526585
      

  3.   

    不想重写Log4j 就用java.io.*吧。有其他简单的通过配置就能解决的,站内我一下。
      

  4.   

    您提供的文档非常好。我做了个很简单的修改。我先说一下我的做法,我创建了一个类,包名类名和RollingFileAppender都一样。只是在日志文件名称后面加了个日期。然后编译成.class文件,放到Log4j文件夹里,覆盖掉以前的RollingFileAppender.class.再打个JAR包,导进工程。但是结果很意外,不但没有生成带有日期的文件,而且也没有按照我配置的到达多少大小就重新生成日志文件。
    不知道我错在哪里?
      

  5.   

    windows 看到的是经过了四舍五入的