[데브코스] Logging하기 + Boot 핥아보기
Updated: Categories: TILW3D5 - Logging 프레임워크 / Logback + 지금까지 실습을 Spring Boot로 바꿔보자!
Logging
- sout으로 로그를 찍지 마라 -> 동기화 문제가 발생하기 때문에
- 다양한 logging 프레임워크를 사용해 로깅하자!
Apache Commons logging
Log4J
Logback
SLF4J
: 다양한 로깅 프레임워크를 바인딩 모듈을 통해 처리해줌
Log Level
- 어느정도까지 로그를 남길지 정하는 기준
- 로깅도 성능에 영향을 끼칠 수 있기때문에 적절한 레벨을 선택해야한다.
- 패키지단위로 로그레벨을 설정할 수 있음
Logback 설정
- 로그 설정파일 찾는 순서
logback-test.xml
logback.groovy
logback.xml
- 기본설정(BasicConfiguration)
- 설정파일 위치는 resource 폴더 하위임
logback.xml
기본 설정은 여기에서 복붙하면 된다.- 추가적인 포맷 정보도 공식 문서에서!
Spring Boot
- CoC(Conversion of Configuration)를 지원하여 설정에 힘쏟지 않아도 된다.
- 디펜던시 관리할때
starter
모듈을 통해 기본적으로 필요한 모듈을 모두 제공해준다!
@SpringBootApplication
- SpringBoot에서 유일하게 하나만 존재함
@SpringBootConfiguration
-> 즉@Configuration
(AppContext) 파일의 역할을 한다.
- 자동으로 Component Scan 해줌
AppConfiguration
클래스을 따로 만들필요가 없음
application.yaml
이 default property임.PropertySourceFactory
yaml 설정클래스 구현 필요 없음
Banner
- 여기에서 스프링부트 시작시 출력되는 배너를 커스텀할 수 있다
resource
폴더 밑에banner.txt
를 만들고 생성한 배너를 복붙해주기만 하면 된다
Logging
- 기존에 사용하던 로그백 이름을
logback-backup.xml
으로 변경하면 스프링 기본 로거를 사용하게 된다. - 스프링부트에선
application.yaml
에 로깅 레벨을 지정해줄 수 있다.