java - logback 未设置 Spring 日志记录阈值

标签 java spring logging slf4j logback

我正在使用 Spring(Core/Security/ldap 等)和 logback。 但由于某种原因,spring 没有收到在 logback XML 中设置的登录阈值 当我调试 springs 源代码时,我也可以看到这一点,我看到

final boolean debug = logger.isDebugEnabled();

是假的

另外我想提一下(我不知道它是否有任何相关性)spring 使用的记录器是:

org.apache.commons.logging.LogFactory
org.apache.commons.logging.Log

而不是像我使用的 SLF4j

那么我应该如何启用调试级别并将日志带入我的 SLF4J 配置..

谢谢

最佳答案

Spring 默认使用 Apache 的 Jakarta Commons Logging 库。您需要禁用它并改为使用 slf4j 桥。你应该有以下(除其他外)

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>${spring.version}</version>
    <exclusions>
        <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
        </exclusion>
    </exclusions>
</dependency>

<!-- Logging -->
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-core</artifactId>
    <version>${logback.version}</version>
</dependency>
<dependency>
    <groupId>ch.qos.logback</groupId>
    <artifactId>logback-classic</artifactId>
    <version>${logback.version}</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>jcl-over-slf4j</artifactId>
    <version>${slf4j.version}</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-api</artifactId>
    <version>${slf4j.version}</version>
</dependency>

然后你的logback.xml或者其他配置就可以设置日志级别了。例如,

<logger name="org.springframework" level="info" additivity="false">
    <appender-ref ref="STDOUT" />
</logger>

关于java - logback 未设置 Spring 日志记录阈值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20823409/

相关文章:

java - JAXB:如何使用 Spring 自动生成的类?

使用 @Autowired 注释进行 Spring JUnit 测试

java - 如何在 Java Spring 应用程序中提交 myBatis 更新语句?

java - Spring 4.2.5 无法查看日志消息

tomcat - 如何为一场 war 拥有单独的tomcat日志

powershell - 如何在 Windows 事件日志中存储对象?

c# - 如何确定给定文件是类文件?

java - Java 中的静态和非静态初始化 block

java - Spring:是否可以在新建应用程序上下文时指定 default-lazy-init 值?

java - NoClassDefFoundError : Problems with linking my own jar to Android project