Log4j中的RollingFileAppender是指满足一定大小后重新生成新的日志文件,我实验后发现生成的文件名格式是XXX.log.i(XXX是日志的名字,i从1往上递增)。
但是其中有个问题,自动生成的日志文件中XXX.log.MAX永远都是最初生成的那个日志,而XXX.log.1永远是刚生成的那个日志,也就是说日志的文件名在每生成一个新的文件后,所有的日志文件名都会改变一次!这是为什么啊?
所以想请教下大神,或者是可以自定义生成的文件的名字,或者是让文件名字一旦生成就不再改变,谢谢!
Log4jRollingFileAppender
但是其中有个问题,自动生成的日志文件中XXX.log.MAX永远都是最初生成的那个日志,而XXX.log.1永远是刚生成的那个日志,也就是说日志的文件名在每生成一个新的文件后,所有的日志文件名都会改变一次!这是为什么啊?
所以想请教下大神,或者是可以自定义生成的文件的名字,或者是让文件名字一旦生成就不再改变,谢谢!
Log4jRollingFileAppender
就是XXX.log.1啊
我是说,对你这个开发/运维人员来说也是没意义的。难道你以后期望看一堆这样的文件(而且,有可能是这个顺序)xxx.log.1000
xxx.log.1001
xxx.log.1002
xxx.log.998
xxx.log.999过几天,可能又变成xxx.log.10000
xxx.log.10001
xxx.log.10002
xxx.log.9998
xxx.log.9999而且,我说了,这样的代码log4j不但难写,而且根本没效率可言。同样对于你的定时任务来说一会儿处理998~1002,一会儿处理9998~10002,也是没什么优势的,相反使用我前面提到过的DailyRollingFileAppender(甚至理论上可以夸张到每秒钟一个文件)更加方便而且一目了然。
我是说,对你这个开发/运维人员来说也是没意义的。难道你以后期望看一堆这样的文件(而且,有可能是这个顺序)xxx.log.1000
xxx.log.1001
xxx.log.1002
xxx.log.998
xxx.log.999过几天,可能又变成xxx.log.10000
xxx.log.10001
xxx.log.10002
xxx.log.9998
xxx.log.9999而且,我说了,这样的代码log4j不但难写,而且根本没效率可言。同样对于你的定时任务来说一会儿处理998~1002,一会儿处理9998~10002,也是没什么优势的,相反使用我前面提到过的DailyRollingFileAppender(甚至理论上可以夸张到每秒钟一个文件)更加方便而且一目了然。
嗯,你说的是极好的,我决定要采用的方法了,谢谢!