반응형
Sring boot jpa log 설정
Spring boot 에서 jpa, hibernate log를 보기위한 설정.
application.profile 의 jpa 설정을 다음과 같이 변경한다.
spring.jpa.show-sql=false
spring.jpa.properties.hibernate.format_sql=true
위와 같이 설정하였다고 해서 로그가 나오진 않는다. logging level도 조정하여 로그를 볼수있다.
# 질의문 보기
logging.level.org.hibernate.SQL=debug
# 질의에 대한 파라미터 보기
logging.level.org.hibernate.type.descriptor.sql=trace
# 히카리 로그보기
logging.level.com.zaxxer.hikari=debug
logging.level.jdbc.sqlonly=debug
# 트렌잭션 로그보기
logging.level.org.hibernate.transaction.JDBCTransaction=debug
logging.level.org.hibernate.jdbc.ConnectionManager=debug
logging.level.org.springframework.orm.JpaTransactionManager=debug
logging 설정 값 property
hibernate.show_sql
spring.jpa.preperties.hibernate.show_sql=true
- 기본설정 값은 false 이다.
- Hibernate에서 실행되는 모든 쿼리문을 콘솔에 출력한다. (system.out)
- org.hibernate.SQL=debug 와 동일한 설정이며 같은 내용을 콘솔에 출력한다. 두가지의 다른점은 위에 언급했듯이 show_sql은 System.out 으로 출력하고 org.hibernate.SQL 은 logger에 출력하는 차이점이 있다.
org.hibernate.SQL
logging.level.org.hibernate.SQL=debug
- 위에 언급한것처럼 logger를 이용하여 실행되는 모든 쿼리문을 출력한다. logger를 이용하기 때문에 시간도 출력된다.
hibernate.format_sql
spring.jpa.preperties.hibernate.format_sql=true
- 로그를 예쁘게 출력해준다. (라인 포맷에 맞춰서 보기좋게), 기본 값은 false이다.
hibernate.highlight_sql
spring.jpa.preperties.hibernate.highlight_sql=true
- ANSI 코드를 사용하여 색감을 부여한다.
hibernate.use_sql_comments
spring.jpa.preperties.hibernate.use_sql_comments=true
- SQL 내부에 주석을(/* */) 추가한다.
hibernate.type.descriptor.sql
logging.level.org.hibernate.type.descriptor.sql=trace
- 로그지정에서 trace로 지정해주면 쿼리문 로그에 출력되어 있는 파라미터에 바인딩 되는 값을을 확인 할수있다.
참고
Spring Boot SQL 설정(hibernate, logging)
Hibernate ORM 6.1.5.Final User Guide
반응형
'Spring > Spring Pure' 카테고리의 다른 글
Spring AOP (Aspect Oriented Programming) (0) | 2022.06.08 |
---|---|
Spring AOP Proxy (0) | 2022.06.08 |