记录有时会起作用,但有时不起作用

时间:2014-09-01 11:31:31

标签: java logging log4j

我们尝试使用多个Logging-Frameworks,如org.apache.log4j.Logger或org.apache.commons.logging.Log。但他们都没有正确地工作。在我们的控制台中,我们没有看到任何内容,即使调试器告诉调用日志代码(使用断点测试)。

使用框架log4j的记录器代码如下:

 private static final Logger logger = LogManager.getLogger( TimeMeasurement.class.getSimpleName() );

我们使用了后续行来打印结果:

logger.info("Time Measurement Result");

调用logger.info()是因为调试器在这里停止了。

为什么我们在控制台中看不到任何内容?

log4j的配置如下:

### direct log messages to stdout ###
log4j.rootCategory=INFO, stdout
log4j.logger.org.springframework=WARN 

我们也尝试使用

System.out.println("Test");

打印结果,但在控制台中仍然没有。

但是一些其他类也有相同的记录器,他们可以在控制台中打印上面的所有框架!太奇怪了......

2 个答案:

答案 0 :(得分:1)

因为它应该是:

log4j.rootCategory=INFO, console

(不是stdout,而是console)。

<强> UPD:

另请尝试:

log4j.rootCategory=info, A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender

答案 1 :(得分:1)

尝试添加以下内容:

 log4j.logger.your_TimeMeasurement_package_here=INFO, stdout

到你的log4j.properties文件