我想使用TimeBasedRollingPolicy;但是,由于遗留原因(c到java端口),日志文件名已经附加了一个日期,如下所示:“log.20130813”。其他下游进程取决于文件名上已有的日期。当它滚动时我希望它被压缩但没有附加日期。这可能吗?
我试过这个:
def date = timestamp("yyyyMMdd")
def logFileName = "log.${date}"
appender("LOG", RollingFileAppender) {
file = logFileName
append = true
rollingPolicy(TimeBasedRollingPolicy) {
fileNamePattern = "${logFileName}.%d{}.gz"
}
encoder(PatternLayoutEncoder) {
pattern = "%msg%n"
}
}
但是,空日期字符串只会导致它使用默认值,因此最终结果如下:
log.20130805.2013-08-05.gz
我真的希望它最终像:
log.20130805.gz
答案 0 :(得分:0)
在Curly braces中。添加%d {yyyy-MM-dd}等格式。
您也可以这样做: $ {文件名}。%d {YYYY-MM-DD}。%i.log.gz
然后输出为: filename.2013-03-15.0.log.gz