JAVA的log4j如何实现程序重新启动会自动生成新的日志文件,文件名可以是当前日期

如题所述

log4j输出日志文件时以当前日期为文件名

在初始化日志配置后加入以下代码:
Java代码 Appender appender = LogManager.getLoggerRepository().getRootLogger().getAppender("A2"); if(appender instanceof FileAppender) { FileAppender fileAppender = (FileAppender)appender; fileAppender.setFile( "log/" + DateUtil.getFormatDate() + ".log"); fileAppender.activateOptions(); } //DateUtil.getFormatDate();是指得到当前格式化后的日期

要是通过配置生成日期是不可能的
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-18
这个问题自己百度可以轻松解决的。
你搜索一下log4j配置就有了。
log4j.appender.prepay_search=org.apache.log4j.DailyRollingFileAppender
log4j.appender.prepay_search.File=${web.root}/logs/prepay_search.log
log4j.additivity.prepay_search = false
log4j.appender.prepay_search.layout=org.apache.log4j.PatternLayout
log4j.appender.prepay_search.DatePattern = '.'yyyy-MM-dd
log4j.appender.prepay_search.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss} [%c]-[%p] %m%n
这个是配置,你说的是org.apache.log4j.DailyRollingFileAppender 这个地方。这个是每天会产生新日志的。
第2个回答  2012-12-18
log4j.appender.R.File=log.txt的位置 希望可以帮到你
相似回答