반응형
안녕하세요.
이번 포스팅에서는 LogBack 설정 방법에 대해서 적어보려고 합니다.
1. LogBack?
- Java에서 가장 많이 사용되었던 로깅 라이브러리인 log4j의 후속 버전
- Log4j를 더욱 성능을 좋게 만든 Java의 오픈 소스 Logging Framework
- SpringBoot에 기본으로 설정 되어 있어 별도의 라이브러리를 추가하지 않아도 됨
2. 설정 방법
1) resources에 'logback-spring.xml' 파일을 생성한다.
2) 'logback-spring.xml' 파일에 로그 출력 설정을 하면 되는데, 필자는 아래와 같이 설정하였다.
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true">
<!-- 로그 파일이 저장될 경로 -->
<property name="LOG_PATH" value="/usr/sampleApp/logs"/>
<!-- 로그 파일 이름 -->
<property name="LOG_FILE_NAME" value="sampleLog"/>
<!-- 로그 출력 패턴 -->
<property name="LOG_PATTERN" value="%-5level %d{yy-MM-dd HH:mm:ss}[%thread] [%logger{0}:%line] - %msg%n"/>
<!-- 로그 레벨 -->
<!--
1) ERROR : 오류 메시지 표시
2) WARN : 경고성 메시지 표시
3) INFO : 정보성 메시지 표시
4) DEBUG : 디버깅하기 위한 메시지 표시
5) TRACE : Debug보다 훨씬 상세한 메시지 표시
아래에서는 info로 설정하였는데, 이 경우엔 INFO 보다 위에 있는 DEBUG와 TRACE는 표시하지 않는다.
-->
<property name="LOG_LEVEL" value="info"/>
<!-- CONSOLE에 로그 출력 세팅 -->
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} : %30logger{5} - %msg%n
</Pattern>
</layout>
</appender>
<!-- File에 로그 출력 세팅 -->
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!-- 파일 경로 설정 -->
<file>${LOG_PATH}/${LOG_FILE_NAME}.log</file>
<!-- 출력패턴 설정-->
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<pattern>${LOG_PATTERN}</pattern>
</encoder>
<!-- Rolling 정책 -->
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- .gz,.zip 등을 넣으면 자동 일자별 로그파일 압축 -->
<fileNamePattern>${LOG_PATH}/${LOG_FILE_NAME}.%d{yyyy-MM-dd}_%i.log</fileNamePattern>
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<!-- 파일당 최고 용량 kb, mb, gb -->
<maxFileSize>10MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- 일자별 로그파일 최대 보관주기(~일), 해당 설정일 이상된 파일은 자동으로 제거-->
<maxHistory>30</maxHistory>
<!--<MinIndex>1</MinIndex>
<MaxIndex>10</MaxIndex>-->
</rollingPolicy>
</appender>
<!-- 로그 전역 세팅 -->
<root level="${LOG_LEVEL}">
<!-- 위에 설정한 콘솔 설정 추가 -->
<appender-ref ref="CONSOLE"/>
<!-- 위에 설정한 파일 설정 추가 -->
<appender-ref ref="FILE"/>
</root>
</configuration>
아래의 블로그를 보고 참고하였으며, 아래의 블로그에 세세하게 설명이 잘 되어있으니 더욱 자세히 알고 싶다면 참고하는 것이 좋을 것이다.
https://goddaehee.tistory.com/206
반응형
'BE > Spring' 카테고리의 다른 글
[Spring Boot] MongoDB 통신 설정 (0) | 2022.05.14 |
---|---|
[Spring Boot] Jasper Reports 설정하기 (0) | 2022.05.13 |
[Spring] Bean & IoC Container (0) | 2022.03.28 |
[Spring] DI & IOC (0) | 2022.03.27 |
[Spring Boot] 인터셉터(Interceptor) 사용법 (0) | 2022.02.24 |