如何将 Spring 数据查询记录到 Couchbase 数据库

How to log Spring-data queries to a Couchbase Database

在我的 Spring-Boot 应用程序中,我们有一个 Spring-Data 存储库连接到 Couchbase 服务器。

我知道当连接到 SQL 服务器时,可以通过添加到 属性 文件行来查看发送到数据库的实际查询,例如这一行 () :

logging.level.org.hibernate.SQL=DEBUG

在使用Couchbase时应该如何操作?

添加 logback 作为你的依赖

    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.2.3</version>
    </dependency>

并将文件 logback.xml 添加到您的资源文件夹:

<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
</appender>

<root level="debug">
    <appender-ref ref="STDOUT" />
</root>

如果我没记错的话,你只能在 class 中启用 dubug 级别,它使用以下配置打印查询:

<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
        <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
</appender>

<logger name="org.springframework.data.couchbase.repository.query" level="debug" />

<root level="info">
    <appender-ref ref="STDOUT" />
</root>

根据 deniswasrosa 的回答,我只需将其添加到 yml 文件中就可以看到查询:

logging:
   level:  
     org.springframework.data.couchbase.repository.query: DEBUG

我不需要添加依赖。

在我的例子中,我使用的是 Kotlin 和 spring-boot-starter-data-couchbase 依赖项,它在属性文件上对我有用的是:

logging.level.org.springframework.data=DEBUG