Tomcat中的SL4JF未显示在日志文件中

时间:2012-03-03 06:07:22

标签: tomcat logging tomcat6 slf4j java.util.logging

我已经安装了Tomcat,并使用SLF4J作为我们的日志框架。我将slf4j-api-1.6.4.jarslf4j-jdk14-1.6.4.jar复制到Tomcat库中,即$TOMCAT_HOME/lib

我假设如果我使用SLF4J,它将委托给java.util.Logger,它将委托给底层的Tomcat日志框架。但是当我部署并检查我的应用程序时,我没有看到任何记录。我的所有异常/日志信息都会丢失。

我的理解是正确的,还是我错过了留在课程中的任何东西?

3 个答案:

答案 0 :(得分:2)

我没有在$ TOMCAT / lib下复制slf4j-api-1.6.4.jar和slf4j-jdk14-1.6.4.jar,而是使用war应用程序运送这些jar。在这种情况下我的异常被记录。

答案 1 :(得分:1)

您可能需要将系统属性添加到CATALINA_OPTS。

对于Windows系统,请添加到%CATALINA_HOME \ bin \ catalina.bat文件中:

set CATALINA_OPTS=-Djava.util.logging.config.file=\PATH\TO\YOUR\logging.properties

或在Linux / UNIX系统上,添加到$ CATALINA_HOME / bin / catalina.sh文件中:

CATALINA_OPTS=-Djava.util.logging.config.file=/PATH/TO/YOUR/logging.properties

不要忘记在Linux / UNIX系统中,如果CATALINA_OPTS中有多个参数,则需要引用,例如

CATALINA_OPTS="-Xmx256m -Djava.util.logging.config.file=/PATH/TO/YOUR/logging.properties"

这一行是为了确保在启动Tomcat时加载logging.properties文件。

答案 2 :(得分:1)

您可以将Tomcat配置为使用in its docs所述的log4j,将log4j.properties放入$ CATALINA_HOME / lib目录,并将slf4j-api与slf4j-log4j12桥接器配合使用。所以你有干净的slf4j API和log4j的优点,如DailyRollingFileAppender等。

相关问题