java - 带有 Logback 的 JOOQ

标签 java logging spring-boot logback jooq

我将 springBoot 与 JOOQ 一起使用,并希望记录生成的 SQL。

我将 slf4J 添加到我的 Maven 依赖项和 log4j.xml 中 JOOQ 文档 ( http://www.jooq.org/doc/latest/manual/sql-execution/logging/ )。但是当 jooq 执行一些查询时,我在控制台中看不到任何日志。

我也在谷歌搜索这个问题,但我找不到任何东西。 SpringBoot 使用 logBack,所以我的路径中有 logBack 和 slf4J。 JOOQ 可以使用 logBack 吗?我在 JOOQ 网站上没有关于它的任何说明。

最佳答案

jOOQ 的内置 JooqLogger尝试按以下顺序解析可选的记录器依赖项:

  • 如果在类路径中找到 slf4j,则使用它
  • 否则,如果在类路径中找到 log4j,则使用它
  • 否则,使用java.util.logging

因此,一旦 JooqLogger 在类路径上找到 slf4j(例如,作为 spring boot 的传递依赖项),它就会将其用作日志记录框架。这是合理的,因为 slf4j 可以配置为委托(delegate)给任何其他日志记录框架,包括 log4j 和 java.util.logging

因此,为了通过 logback 和 Spring Boot 启用 jOOQ 的调试日志记录,将以下 logback.xml 文件放在类路径根目录中就足够了:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <include resource="org/springframework/boot/logging/logback/base.xml"/>
    <logger name="org.jooq" level="DEBUG"/>
</configuration>

这现在也反射(reflect)在 jOOQ-spring-boot-example on GitHub 中.

可以在 Spring Boot 手册中找到更多想法: https://docs.spring.io/spring-boot/docs/current/reference/html/howto-logging.html

关于java - 带有 Logback 的 JOOQ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36035315/

相关文章:

java - 如果用户具有多个权限,Spring 安全表达式会失败

java - 是否可以为 javafx textField/Area 中的不同行设置不同的颜色?

coldfusion - 查看coldfusion日志的应用程序

objective-c - CocoaLumberjack FileLogger 记录到多个文件

Spring websockets + Amazon MQ 限制

java - Spring @ConfigurationProperties 绑定(bind)在测试中失败

java - 死锁示例

c# - 登录多线程环境并测试

java - 从位于服务器文件系统中的外部文件导入 Spring 属性

java - 在 JAVA 中验证 CSV 的正则表达式