在我们的一个项目中,我们使用SLF4J + logback进行日志记录。是否可以将spring-framework配置为使用SLF4J而不是其默认的log4j?
发布于 2015-06-05 10:42:19
Spring默认使用apache commons日志记录(不是log4J),但它只是一个包装器。您需要为它提供一个日志记录包以供其连接。大多数人似乎建议将apache commons替换为一个名为SLF4J的不同包装器,并将其连接到Log4J记录器。如果您觉得这是登录spring的唯一正确方法,那么这里的说明应该对您有效:http://spring.io/blog/2009/12/04/logging-dependencies-in-spring
有一种更简单的方法。我只是在WEB-INF类中添加了一个logging.properties文件,并配置了一些spring记录器和处理程序。这里有一个基本的logging.properties文件:https://tomcat.apache.org/tomcat-6.0-doc/logging.html#Using_java.util.logging_(default)
将所有出现的“org.springframework.handlers=3spring.org.apache.juli.FileHandler”替换为“logging.properties”,在logging.properties示例中的任意位置添加以下两行: org.springframework.level=FINE org.springframework.level=FINE
并删除以下内容: org.apache.catalina.core.ContainerBase.Catalina.localhost./manager.level = INFO org.apache.catalina.core.ContainerBase.Catalina.localhost./manager.handlers =\ 3manager.org.apache.juli.FileHandler
Apache commons将在JDK中找到java.util.logging包,并且spring框架日志位于$CATALINA_BASE/conf下(或者,如果不是在tomcat中部署,则替换.properties文件中的路径)。
https://stackoverflow.com/questions/16394177
复制相似问题