2016-11-24 217 views
-2

如何在沒有其他系統生成信息的情況下在控制檯中配置log4j以僅顯示我的 log.debug("test log"); 消息? 這是非常令人不安的,當在小應用程序你的控制檯與大量無用的(至少對我來說)如 調試信息org.springframework.beans.CachedIntrospectionResults:獲取BeanInfo類[org.thymeleaf.spring4.view.ThymeleafView] 我的log4j.properties文件:如何配置log4j

log4j.rootLogger=DEBUG, stdout, file 
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 

回答

0

您可以使用LoggerMatchFilterDenyAllFilter來限制您的日誌appender僅來自您的代碼的消息。

LoggerMatchFilter filter = new LoggerMatchFilter(); 
filter.setLoggerToMatch("Your.Root.Namespace"); 
filter.setAcceptOnMatch(true); 
log4j.appender.stdout.addFilter(filter); // Match your messages only. 
log4j.appender.stdout.addFilter(new DenyAllFilter()); // Don't match anything else. 
0

是你的應用程序使用log4j還是要配置? log4j configure steps

如果已經log4j的是在使用中,更改記錄級別爲ERROR 檢查您的應用程序是否使用任何XML配置文件或log4j的屬性文件,這樣你就可以改變它。

logger level configuration步驟。