我是 apache logger 的新手。我已下载 log4j-xx,并且有以下文本配置文件
# Set root logger level to DEBUG and its only appender to mainFormat.
log4j.rootLogger = TRACE, mainFormat, FILE
# mainFormat is set to be a ConsoleAppender.
log4j.appender.mainFormat=org.apache.log4j.ConsoleAppender
# mainFormat uses PatternLayout.
log4j.appender.mainFormat.layout=org.apache.log4j.PatternLayout
log4j.appender.mainFormat.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
#File makes a file of the output.
log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE.File=log4j_HAPR001_OutputFile.log
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.ConversionPattern=%d [%t] %-5p %c - %m%n
我使用上述配置文件来创建日志文件。现在我想将当前时间戳添加到日志文件中。有什么方法可以做到这一点吗?如果有,请有人给我说明如何操作。提前致谢。
问候,Swati
答案1
这DailyRollingFileAppenderLog4j 完全可以满足您的要求。
答案2
下载一份 org.apache.log4j.FileAppender 副本(例子)。
将其复制到您自己的命名空间并重构......
注释掉“getName”和“setName”属性并添加“getDirectory”和“setDirectory”属性。
聪明的东西来自于激活选项()调用,你现在可以动态创建文件名变量。对于你的情况,你需要使用日历班级。
不要忘记更改 log4j.properties 文件,例如:
#File makes a file of the output.
#log4j.appender.FILE=org.apache.log4j.FileAppender
log4j.appender.FILE=com.yourcompany.yourFileAppender
#log4j.appender.FILE.File=log4j_HAPR001_OutputFile.log
log4j.appender.FILE.Directory=${catalina.base}/logs