1

在 Tomcat 7 上,我试图从我正在使用的 Spring 库中获取日志记录输出。

在Tomcat的logging.properties我有:

.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler

java.util.logging.ConsoleHandler.level = ALL
1catalina.org.apache.juli.FileHandler.level = ALL

#this does not change the logging level...
org.springframework.level = ALL

# this does change the logging level...
javax.faces.level = ALL
com.sun.faces.level = ALL

如您所见,我现在确实从 JSF 获得了日志消息,但没有从 Spring 获得日志消息。

为什么会这样,我在这里错过了什么?

更新:

我注意到,当我从类路径中删除 log4j.jar 时,我确实从 Spring 获得了日志记录。但是当我将 log4j.jar 添加到类路径时,来自 Spring 的日志记录消失了。你能解释一下为什么吗?

顺便说一句,我的类路径中确实需要 log4j,因为我正在使用的其他 jar 之一在其代码中明确引用了 log4j。

4

1 回答 1

1

我会使用与 Tomcat 日志记录分开的 slf4j 日志记录。使用应用程序日志记录而不是容器日志记录。

参考:

http://blog.springsource.org/2009/12/04/logging-dependencies-in-spring/ 如何配置 Spring 和 SLF4J 以便获得日志记录?

示例应用程序: https ://src.springframework.org/svn/spring-samples/mvc-basic/trunk/

于 2012-04-08T18:45:29.070 回答