1. SLF4J
- 로깅 패사드
- 로깅에 대한 추상화된 인터페이스를 제공해준다.
- 즉, SLF4J를 사용하면 로깅 라이브러리에 대한 의존성을 제거해준다.(손쉬운 모듈 교체 가능)
2. spring에서 SLF4J 사용하기
1) spring 기본 로깅 모듈 제거
- spring은 기본적으로 common-logging을 사용
- 이를 제거하고 slf4를 추가
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<versions>${spring.version}</version>
<exclusions>
<!-- common-logging 제거 -->
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging<artifactId>
<exclusion>
</exculsions>
</dependency>
2) jcl-over-slf4 추가
- commons-logging을 대체하는 SLF4J 라이브러리
- 추가하지 않으면 spring은 commons-logging을 찾지 못했다는 오류를 발생시킨다.
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.25</version>
</dependency>
3) 로깅 모듈 추가 & 설정
- 실제 로깅을 수행할 로깅 모듈을 추가한다.
- 최근에는 logback, log4j2를 주로 사용한다.
[tip]
로그 파일은 용도에 따라 폴더를 나누어 관리한다.
- local : 개인개발
- dev : 공통개발
- stage : 테스트 환경
- production : 운영환경
[tip]
spring의 인터셉터를 사용하면 컨트롤 시작, 종료 시의 로그를 남길 수 있다.
[참조]
sl4j를 사용해야 하는 이유 : https://inyl.github.io/programming/2017/05/05/slf4j.html
'dev > Spring' 카테고리의 다른 글
spring data jpa에서 enum 사용 방법 (0) | 2019.03.21 |
---|---|
파일 업다운로드 기본설정, 멀티파트 미디어 타입 (0) | 2019.02.24 |
인터셉터, 서블릿 필터 (0) | 2019.02.24 |
상태 정보 유지(쿠키, 세션) (0) | 2019.02.20 |
spring mvc 프로젝트 구조 (0) | 2019.02.19 |