2017-03-03 49 views
0

这是我的log4j.properties文件:的log4j不打印调试消息记录到文件

# Root logger option 
log4j.rootLogger=INFO, stdout, file 

# Direct log messages to stdout 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Threshold=INFO 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.EnhancedPatternLayout 
log4j.appender.stdout.layout.ConversionPattern=[%p] %d{MM-dd-yyyy HH:mm:ss} - %m%n 

# Direct log messages to file 
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.file.Threshold=DEBUG 
log4j.appender.file.File=logs/log.txt 
log4j.appender.file.Append=true 
log4j.appender.file.Encoding=UTF-8 
log4j.appender.file.DatePattern='-'yyyy-MM-dd'.txt' 
log4j.appender.file.layout=org.apache.log4j.PatternLayout 
log4j.appender.file.layout.ConversionPattern=[%p] %d{MM-dd-yyyy HH:mm:ss} - %m%n 

这里是我如何使用Logger对象在我的代码:

private Logger log = Logger.getLogger(MyClass.class); 
log.info("This is an info message"); 
log.debug("This is a debug message"); 

问题:只有info消息打印在控制台和文件上,而我只需要控制台上的info消息和info文件中的消息和调试消息。

回答

0

将下面的行添加到我的log4j.properties中解决了问题。

log4j.logger.somePackage.MyClass = debug