Couchbase에서 애플리케이션 성능을 개선하는 방법 중 하나는 일반적인 쿼리에 대한 인덱스를 생성하는 것입니다. 그러나 표준 DSL을 사용하여 Spring 데이터로 작업하는 경우 생성된 쿼리가 명확하지 않아 올바른 인덱스를 생성하기가 조금 더 어렵습니다.

이 문제는 다음을 활성화하여 쉽게 해결할 수 있습니다. DEBUG 클래스의 로그 수준 AbstractN1qlBasedQuery를 클릭하면 생성된 N1QL 쿼리를 활성화하는 것과 매우 유사한 동작으로, 로그에서 속성 show_sql 를 설정합니다. 이 구성을 설정하는 방법은 다음과 같습니다. application.yml

다음을 통해서도 활성화할 수 있습니다. 로그백  종속성으로 추가하기만 하면 됩니다:

그런 다음 logback.xml 구성 파일을 리소스 폴더에 저장합니다:

애플리케이션을 다시 실행하면 생성된 N1QL 쿼리가 로그에 인쇄됩니다.

 

궁금한 점이 있으면 다음 주소로 문의해 주세요. @deniswsrosa

 

 

작성자

게시자 데니스 로사, 개발자 옹호자, 카우치베이스

데니스 로사는 독일 뮌헨에 거주하고 있는 카우치베이스의 개발자 옹호자입니다. 그는 소프트웨어 엔지니어로서 탄탄한 경력을 쌓았으며 Java, Python, Scala, Javascript를 유창하게 구사합니다. Denis는 검색, 빅 데이터, AI, 마이크로서비스 및 개발자가 아름답고 빠르고 안정적이며 확장 가능한 앱을 만드는 데 도움이 되는 모든 것에 대해 글을 쓰는 것을 좋아합니다.

댓글 하나

  1. 스프링 데이터 카우치베이스 4.1.1을 사용하는 SpringBoot 2.4에서 작동하나요? 로그백-spring.xml 아래에서 리포지토리 쿼리에 대한 로깅을 활성화할 수 없나요?

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

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

      1. 댓글을 편집하거나 삭제할 수없는 것 같습니다.로그백 xml이 왜곡되어 있지만 예제와 동일합니다.

    2. 데니스 로사, 개발자 옹호자, 카우치베이스 1월 13, 2021에서 11:34 오전

      안녕하세요! 스프링 데이터 4부터는 org.springframework.data.couchbase.core.query 패키지를 사용해 주세요.

댓글 남기기