我最近在我的项目中添加了Log4j,并且所有的日志都按照预期打印出来了。
现在,我已经在log4j.properties文件中添加了时间戳,服务器生成的日志正在打印时间戳,但是我从Logger.info()和Logger.error()打印的哪些语句没有打印时间戳。这是我的log4j.properties的样子:
logFileLoc = ${catalina.base}/logs/
log4j.rootLogger=INFO, stdout, fileAppender
log4j.appender.stdout = org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}: [%-5p] %c{1}:%L - %m%n
# Redirect Log Messages To A Debug Log File, Support File Rolling !!
log4j.appender.fileAppender=org.apache.log4j.RollingFileAppender
log4j.appender.fileAppender.File=${logFileLoc}/catalina.out
log4j.appender.fileAppender.MaxFileSize=50MB
log4j.appender.fileAppender.MaxBackupIndex=10
log4j.appender.fileAppender.Append=true
log4j.appender.fileAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.fileAppender.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss}: [%-5p] %c{1}:%L - %m%n
每当我在我的代码中尝试这样的事情时:
LOGGER.debug("creating HomePage");
这是我在日志文件中看到的:
creating HomePage
有没有人可以建议我如何在LOGGER语句中打印时间戳?这将是非常值得欣赏的。
发布于 2021-01-27 05:18:49
我用log4j 1.2.17
检查了你的配置,一切正常。
我认为您在类路径中有其他log4j配置文件,或者您正在使用对log4j配置有影响的系统变量(如log4j.defaultInitOverride
或其他一些)。我建议在LogManager
类的静态块中调试log4j
初始化,然后您将看到log4j
从哪个位置加载配置。
如果我错了,请提供重现问题的代码。
https://stackoverflow.com/questions/65900251
复制相似问题