Spring
Logback JSON 포맷으로 출력하기
jayden-lee
2020. 2. 28. 23:20
728x90
의존성 추가
build.gradle 파일에 아래 의존성을 추가한다.
compileOnly("ch.qos.logback.contrib:logback-jackson:0.1.5")
compileOnly("ch.qos.logback.contrib:logback-json-classic:0.1.5")
JsonLayout 설정하기
logback.xml 파일에 로그 메시지를 JsonLayout
으로 출력되도록 설정한다. 추가적으로 JacksonJsonFormatter
을 설정하면 Json 로그 메시지가 Json Formatter가 적용되어 출력된다.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder">
<layout class="ch.qos.logback.contrib.json.classic.JsonLayout">
<timestampFormat>yyyy-MM-dd'T'HH:mm:ss.SSSX</timestampFormat>
<timestampFormatTimezoneId>Etc/UTC</timestampFormatTimezoneId>
<appendLineSeparator>true</appendLineSeparator>
<jsonFormatter class="ch.qos.logback.contrib.jackson.JacksonJsonFormatter">
<prettyPrint>true</prettyPrint>
</jsonFormatter>
</layout>
</encoder>
</appender>
<root level="debug">
<appender-ref ref="stdout"/>
</root>
</configuration>