我有以下配置:
log4j.appender.debug=org.apache.log4j.DailyRollingFileAppender
log4j.appender.debug.File=/path/to/log/log.txt
log4j.appender.debug.Append=true
log4j.appender.debug.DatePattern=.yyyy-MM-dd-HH-mm-ss
log4j.appender.debug.layout=org.apache.log4j.PatternLayout
log4j.appender.debug.layout.ConversionPattern=%n================================%n%d{yyyy-MM-dd-HH-mm-ss}%n%c%n%m %x%n--------------------------------%n
目前,正在翻转的文件称为:
log.txt.2014-10-26-14-12-33
使用上面的DatePattern,但我想将文件名翻转为:
2014-10-26-14-12-33.log.txt
然而,似乎即使我在开头删除了点并将其添加到结尾,文件名仍然附加到开头 . 所以:
log4j.appender.debug.DatePattern=yyyy-MM-dd-HH-mm-ss'.ending'
仍然记录为
log.txt.2014-10-26-14-12-33.ending
原因是我希望文件在文件资源管理器中轻松排序 . 我有几个日志文件 .
Is there a way to get log4j not to add the file name to the beginning of the rolled file?
2 回答
不幸的是,除非您在http://grepcode.com/file/repo1.maven.org/maven2/log4j/log4j/1.2.14/org/apache/log4j/DailyRollingFileAppender.java中自定义并覆盖名为rollover的方法 .
它确实:
你需要做:
并在log4j xml中使用该类 .
下面添加了一个方法并调用了通常schedueledTime被更改的方法 . 该方法是 moFilename ,从两个地方调用, everything else is the same .
所有代码:
配置文件是: