
<appender name="JSON_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<File>${LOG_PATH}/${FILE_NAME}.log</File>
<encoder class="net.logstash.logback.encoder.LogstashEncoder"/>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<FileNamePattern>${LOG_PATH}/${FILE_NAME}_%d{yyyy-mm-dd}.%i.log</FileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>5MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<maxHistory>3</maxHistory>
</rollingPolicy>
<filter class="CustomFilter">
<levels>INFO|TRACE|DEBUG|WARN</levels>
</filter>
</appender>
<encoder class="net.logstash.logback.encoder.LogstashEncoder" />
<root level="info" additivity="false">
<appender-ref ref="JSON_FILE"/>
</root>
TRACE < DEBUG < INFO < WARN < ERROR
로그 레벨을 INFO로 설정하면 INFO보다 밑에 있는 TRACE, DEBUG 레벨의 로그는 출력되지 않는다.