* build.gradle
- configurations 영역에 exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging' 추가
- log4j2 버젼 추가
configurations {
.
.
.
all {
exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging'
}
}
ext['log4j2.version'] = '2.17.0'
- dependencies 영역에 log4j2 관련 추가
dependencies {
.
.
.
implementation 'org.springframework.boot:spring-boot-starter-log4j2'
implementation 'org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4.1:1.16'
}
build.gradle 적용
* application.properties datasource 소스 수정
spring.datasource.url=jdbc:log4jdbc:mysql://111.111.111.111:3306/db명?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Seoul
spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy
* log4j2.xml
<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="DEBUG">
<Properties>
<Property name="LOG_PATTERN">%d{HH:mm:ss.SSSZ} [%t] %-5level %logger{36} - %msg%n</Property>
</Properties>
<Appenders>
<Console name="ConsoleLog" target="SYSTEM_OUT">
<PatternLayout pattern="${LOG_PATTERN}" charset="UTF-8"/>
</Console>
</Appenders>
<Loggers>
<Root level="info">
<AppenderRef ref="ConsoleLog" />
<AppenderRef ref="FileLog" />
</Root>
</Loggers>
</Configuration>
* log4jdbc.log4j2.properties
log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
log4jdbc.dump.sql.maxlinelength=0
logging.level.jdbc.sqlonly=on