프로그래밍 일기/Java & Spring

[Spring Boot] Mybatis 쿼리 로그 찍기 log4j2 설정 방법, logging level 설명

MakeMe 2023. 7. 5. 16:40
반응형
build.gradle
implementation 'org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4.1:1.16'

해당 부분에 의존성 추가

log4jdbc.log4j2.properties

log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
log4jdbc.dump.sql.maxlinelength=0
log4jdbc.auto.load.popular.drivers=false
log4jdbc.drivers=com.mysql.jdbc.Driver

log4j2를 설정하기 위해 해당 경로에 log4jdbc.log4j2.properties 파일을 입력해야 합니다.

 

application.properties
# SQL logging
logging.level.root = info
logging.level.jdbc.sqlonly=off
logging.level.jdbc.sqltiming=info
logging.level.jdbc.resultsettable=info
logging.level.jdbc.audit=off
logging.level.jdbc.resultset=off
logging.level.jdbc.connection=off
logging.level.org.springframework.web.servlet=off
logging.level.org.springframework.web.multipart.commons=off
logging.level.org.springframework.web=debug
logging.level.com.wbsoft=debug
logging.level.org.springframework.cache=debug

spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
spring.datasource.url=jdbc:log4jdbc:mysql://localhost:3306/TEST_DB?serverTimezone=UTC&characterEncoding=UTF-8
spring.datasource.username=root
spring.datasource.password=root
mybatis.mapper-locations=/mapper/**/*.xml

logging.level.root = info: 루트 로거(root logger)의 로그 레벨을 info로 설정합니다. 이 설정은 모든 패키지 및 클래스에 적용됩니다. info 레벨은 warn, error, fatal과 같은 경고 및 오류 메시지를 포함하여 정보 메시지를 로그에 기록합니다.

logging.level.jdbc.sqlonly=off: JDBC SQL 쿼리에 대한 로그 레벨을 off로 설정합니다. 이 설정은 SQL 쿼리에 대한 로그를 비활성화합니다.

logging.level.jdbc.sqltiming=info: JDBC SQL 쿼리의 실행 시간에 대한 로그 레벨을 info로 설정합니다. 이 설정은 SQL 쿼리의 실행 시간을 로그에 기록합니다.

logging.level.jdbc.resultsettable=info: JDBC 결과셋(ResultSet)의 테이블 형태로 출력하는 로그 레벨을 info로 설정합니다. 이 설정은 결과셋을 테이블 형태로 로그에 출력합니다.

logging.level.jdbc.audit=off: JDBC 감사(audit) 로그 레벨을 off로 설정합니다. 이 설정은 JDBC 작업에 대한 감사 로그를 비활성화합니다.

logging.level.jdbc.resultset=off: JDBC 결과셋(ResultSet) 로그 레벨을 off로 설정합니다. 이 설정은 ResultSet에 대한 로그를 비활성화합니다.

logging.level.jdbc.connection=off: JDBC 연결(Connection) 로그 레벨을 off로 설정합니다. 이 설정은 데이터베이스 연결에 대한 로그를 비활성화합니다.

logging.level.org.springframework.web.servlet=off: Spring Web MVC의 로그 레벨을 off로 설정합니다. 이 설정은 Spring Web MVC 프레임워크에 대한 로그를 비활성화합니다.

logging.level.org.springframework.web.multipart.commons=off: Spring의 파일 업로드와 관련된 CommonsMultipartResolver의 로그 레벨을 off로 설정합니다. 이 설정은 파일 업로드 관련 로그를 비활성화합니다.

logging.level.org.springframework.web=debug: Spring Web 모듈의 로그 레벨을 debug로 설정합니다. 이 설정은 Spring Web 모듈의 디버그 로그를 기록합니다.

logging.level.com.wbsoft=debug: com.wbsoft 패키지의 로그 레벨을 debug로 설정합니다. 이 설정은 com.wbsoft 패키지에 대한 디버그 로그를 기록합니다.

logging.level.org.springframework.cache=debug: Spring 캐시 모듈의 로그 레벨을 debug로 설정합니다. 이 설정은 Spring 캐시 모듈의 디버그 로그를 기록합니다.

결과값

반응형