스프링 부트에서 로그를 기록할 때 주로 logback을 사용합니다.
먼저 pom.xml에 logback 관련 디펜던시 logback-classic과 logback-core가 있는지 확인합니다.
만약 logback 디펜던시가 없으면 직접 추가해야 합니다.
src/resources 디렉토리 밑에 logback-spring.xml 파일을 생성합니다.
logback.xml 파일을 생성해도 되지만
스프링 application.yml파일에 있는 로그파일 디렉토리와 로그파일 이름을 참조하기 위해
logback-spring.xml 파일을 생성했습니다.
logback-spring.xml 파일에 대한 내용은 아래와 같습니다.
3~4라인: springProperty 태그를 사용하여 application.yml 파일에 있는 값(로그파일 디렉토리, 로그파일 이름)을 읽습니다.
5~6라인: property태그를 사용하여 콘솔에 기록될 로그 패턴과 파일에 기록될 로그 패턴을 정의합니다.
8~12라인: 콘솔에 기록될 로그를 처리하는 ConsoleAppender 객체 생성.
encoder: 5라인에 정의한 로그 패턴 적용.
14~28라인: 파일에 기록될 로그를 처리하는 RollingFileAppender 객체 생성.
file: 로그파일 위치 및 이름 설정.
encoder: 6라인에 정의한 로그 패턴 적용.
rollingPolicy: 일자별 로그 파일 설정 정의(로그파일 위치, 최대사이즈, 최대보관기간).
30~49라인: 스프링 프로필에 따라 로그 레벨 및 appnder 설정.
51~54라인: 루트 로거 설정
56~59라인: 스프링 부트 관련 로거 설정
logger와 appender의 차이점에 대해 설명하면
logger는 로그를 실행하는 객체고
appender는 logger가 전달한 내용을 저장 또는 출력을 하는 객체입니다.
해당 글에 대한 정보는 아래 블로그를 참고했습니다.
https://goddaehee.tistory.com/206
'dev > 스프링' 카테고리의 다른 글
Spring Boot Jasypt (0) | 2023.08.14 |
---|---|
Spring Naver Editor 이미지 업로드 (0) | 2023.06.28 |
Spring Enum 활용 (0) | 2023.06.05 |
Spring Boot WebSocket (0) | 2023.02.14 |
Spring DI (0) | 2023.02.07 |