【发布时间】:2012-10-28 17:50:24
【问题描述】:
对于部署在 WebSphere Portal 中的应用程序,我有以下 log4j.properties 文件:
log4j.rootLogger=DEBUG, InfoAppender, DebugAppender
log4j.appender.InfoAppender=org.apache.log4j.RollingFileAppender
log4j.appender.InfoAppender.Threshold=INFO
log4j.appender.InfoAppender.File=C:/info.log
log4j.appender.InfoAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.InfoAppender.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.DebugAppender=org.apache.log4j.RollingFileAppender
log4j.appender.DebugAppender.Threshold=DEBUG
log4j.appender.DebugAppender.File=C:/debug.log
log4j.appender.DebugAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.DebugAppender.layout.ConversionPattern=%d %p [%c] - %m%n
当我编码时,我在类级别定义记录器:
private static Logger logger = Logger.getLogger(IWannaLogThis.class);
我用这个记录 INFO 消息:
logger.info(theObjectToLog);
当我部署我的应用程序时,debug.log 文件会获取我使用logger.debug() 记录的所有内容,但会忽略我使用logger.info() 编写的所有内容。另一方面,info.log 文件保持为空。
最奇怪的是,在debug.log 和info.log 中出现了一些由我在类路径中的一些 JARS(如 Hibernate Validator)发出的 INFO 和 DEBUG 消息,但忽略了我尝试登录代码的所有内容。
有什么想法吗?
【问题讨论】: