Dev/Spring

[Spring] Log4Jdbc Log4j2 설정 방법

망고밥먹는쿼카 2022. 4. 1. 21:56

개인 학습 기록용이기 때문에 오류가 있을 수 있습니다.

양해 부탁드립니다.


📌 설정 방법

1. https://mvnrepository.com/

에서 "bgee" 검색 > Log4Jdbc Log4j2 JDBC 선택 > 버전 맞게 복사

<!-- https://mvnrepository.com/artifact/org.bgee.log4jdbc-log4j2/log4jdbc-log4j2-jdbc4.1 -->
<dependency>
    <groupId>org.bgee.log4jdbc-log4j2</groupId>
    <artifactId>log4jdbc-log4j2-jdbc4.1</artifactId>
    <version>1.16</version>
</dependency>

 

2. pom.xml에 추가 후 reload

 

3. log4jdbc.log4j2.properties 생성(src/main/resources)

log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator

 

4. logback.xml 생성(src/main/resources)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration>
<configuration>
	<include resource="org/springframework/boot/logging/logback/base.xml"/>
	
	<!-- log4jdbc-log4j2 -->
	<logger name="jdbc.sqlonly" level="INFO"/>
	<logger name="jdbc.sqltiming" level="INFO"/>
	<logger name="jdbc.audit" level="WARN"/>
	<logger name="jdbc.resultset" level="INFO"/>
	<logger name="jdbc.resultsettable" level="INFO"/>
	<logger name="jdbc.connection" level="INFO"/>
</configuration>

 

5. root-context.xml 변경

<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
		<property name="driverClassName" value="net.sf.log4jdbc.sql.jdbcapi.DriverSpy"></property>
		<property name="url" value="jdbc:log4jdbc:mysql://localhost:3306/springbasic?useUnicode=true&amp;characterEncoding=utf8"></property>
		<property name="username" value="id"></property>
		<property name="password" value="pw"></property>
</bean>

 

📌결과

Log4Jdbc Log4j2 실행 결과

 

📌 참고

패스트캠퍼스 <스프링의 정석> 강의