Legday
[Spring] 로깅 레벨(Logging Level) 이란 ? 본문
프로그램을 개발 및 운영 할때는 프로그램의 문제점이나 추적을 할때 로그를 남겨야 한다. 로그를 남기는 방법에는 System.out.println() 등의 방식이 있지만 실무에서는 로깅방식을 사용한다! ( 서버 과부하를 막기 위해! )
1. 로그 레벨
- 로그 레벨은 크게 5 개로 나누어진다.
- trace > debug > info > warn > error ( 좌측이 가장 높은 레벨이다 )
- 로그 레벨을 설정하기 위해서는 application.properties 파일에 작성해줘야 한다.
logging.level.hello.springmvc = 로깅레벨
운영단계에서는 로깅레벨을 info 로 해두면된다.
info 로 했을때 info 를 포함한 아랫 레벨까지 다 기록된다.

개발단계에서는 로깅레벨을 debuf로 해두면된다.
debug로 했을 때 debug를 포함한 아래 레벨이 다 기록된다.

2. 로그이용법!!
2가지 방법이 있다. Logger 객체를 DI(의존성 주입) 을 하던가 어노테이션을 쓰는 방법이 있다.
private final Logger log = LoggerFactory.getLogger(getClass());
// org.slf4j 패키지 사용
// 어노테이션을 쓰면 따로 객체선언을 할 필요없다.
@Slf4j
로깅레벨 디폴트값은 info 이다!!
3. 올바른 로그 사용법!!
log를 남길때 + 연산자를 이용해서 문자열을 출력하지 않아야 한다!! 쓸데 없는 연산이 일어나기 때문!!
log.trace(" trace log =" + name); //현재 로깅레벨은 debug
위와 같이 하면 로깅레벨은 debug기 때문에 trace로그는 출력되지 않는다. 하지만 + 연산자로 문자열을 붙히기 때문에 쓸데없는 연산이 일어난다. 그래서 아래 방법으로 로그를 남기는게 정신건강에 좋다!!
log.trace("data={}",data); //이렇게하면 연산도 일어나지않고 출력된다.
로깅레벨을 상황에 맞게 설정할 수 있다!!
'Spring&Springboot > Spring(개인공부용)' 카테고리의 다른 글
| [Spring] MVC 패턴 (0) | 2022.12.11 |
|---|---|
| [Spring] 요청 매핑 (0) | 2022.12.11 |
| SOLID 란? (0) | 2022.12.06 |
| CSR , SSR 이란? (0) | 2022.12.06 |
| [Spring] 서블릿(Servlet)이란 ? (0) | 2022.12.06 |