Java

How to log queries generated by Spring Data

One of the ways to improve your application performance in Couchbase is to create indexes for common queries. However, when you are working with Spring Data using its standard DSL, the generated query is not very clear, which makes a little bit more difficult to create the right index to it.

This problem can be easily solved by enabling DEBUG log level in the class AbstractN1qlBasedQuery, it will print the generated N1QL query in the log, a behavior very similar to enabling the attribute show_sql in Hibernate.  Here is how you can set this configuration in your application.yml

You can also enable it via logback  by simply adding it as a dependency:

And then, add the logback.xml configuration file in your resources folder:

When you run your application again, the generated N1QL queries will be printed in the logs.

 

If you have any questions, ping me at @deniswsrosa

 

 

Share this article
Get Couchbase blog updates in your inbox
This field is required.

Author

Posted by Denis Rosa, Developer Advocate, Couchbase

Denis Rosa is a Developer Advocate for Couchbase and lives in Munich - Germany. He has a solid experience as a software engineer and speaks fluently Java, Python, Scala and Javascript. Denis likes to write about search, Big Data, AI, Microservices and everything else that would help developers to make a beautiful, faster, stable and scalable app.

6 Comments

  1. Does this work with SpringBoot 2.4 with springdata-couchbase 4.1.1?I couldn’t enable logging for repository queries with below logback-spring.xml?

    %d{HH:mm:ss} [%thread] %-5level %logger{36} – %msg%n

    1. %d{HH:mm:ss} [%thread] %-5level %logger{36} – %msg%n

      1. Seems comment can neither be edited nor deleted.logback xml is distorted.But its the same as your example

    2. Denis Rosa, Developer Advocate, Couchbase January 13, 2021 at 11:34 am

      Hi! please use the package org.springframework.data.couchbase.core.query from Spring Data 4 onwards

Leave a comment

Ready to get Started with Couchbase Capella?

Start building

Check out our developer portal to explore NoSQL, browse resources, and get started with tutorials.

Use Capella free

Get hands-on with Couchbase in just a few clicks. Capella DBaaS is the easiest and fastest way to get started.

Get in touch

Want to learn more about Couchbase offerings? Let us help.