오늘은 저번에 알아보기로 했던 '로그의 레벨 단계'에 대해 알아보자!
저번에 말한 것 같이 로그의 레벨 단계에는 아래와 같이 6가지로 볼 수 있다.
trace -> debug -> info -> warn -> error -> fatal
무조건 이렇게 5가지의 레벨만 있는 것은 아니다.
하지만 자주 사용되고 사용하는 레벨은 이렇게 6가지의 레벨이라고 생각한다.
개발을 하면서 발생하는 이벤트나 메시지의 심각성 또는 중요성에 따라
어떠한 레벨의 로그를 사용해야 하는지 달라진다.
어떤 경우에 어떠한 로그의 레벨을 사용하면 좋은지 한번 알아보자!
1. TRACE
디버그 레벨이 너무 광범위 한 것을 해결하기 위해 Log4j 1.2.12 에서 신규 추가된 레벨이다.
디버깅 목적으로 사용되는 로그 레벨이다.
DEBUG 레벨보다 조금 더 상세하게 로그 및 기록을 남길 수 있다.
2. DEBUG
일반적으로 개발 시, 개발 및 디버깅(테스트)을 할 때 사용되는 로그 레벨이다.
운영 환경에서는 로그를 남기고 싶지 않은데 메시지는 확인하고 싶을 때 사용한다.
"만일 현재 개발을 하는데 문제 또는 메시지 혹은 데이터를 확인 할 때
System.out.print() 나 Console.log 를 사용한다면 그러지 말고
본인이 사용하는 툴 내에 있는 디버거를 배워서 사용하거나
당장 디버거 사용이 어렵다 싶으면 로그의 DEBUG라도 사용해보자!
(화자는 System.out.print() 나 Console.log 사용을 지양해야 한다고 생각합니다.. :>)
3. INFO
딱 이름에서부터 생각해 볼 수 있듯, 일반적으로 정보와 관련된 메시지를 기록할 때 사용하는 로그 레벨이다.
로그인, 상태변경 등 과 같이 정보성(시스템 파악하는 정보 같은?) 메시지를 기록할 때 사용하면 되겠다.
4. WARN
지금 당장 심각한 문제는 아니지만 향후 시간이 지남에 따라 문제나 에러가 될 수 있는 잠정적 오류가 될 수 있는
경우에 사용하는 로그 레벨이다.
5. ERROR
이름 뜻 그대로 심각한 문제 또는 오류인 경우에 사용하는 로그 레벨이다.
개발 및 테스트 진행 시 발생하는 오류 혹은 예외를 기록할 때 사용한다.
바로 조치를 해야하는 그런 문제를 기록할 때 사용하면 되겠다.
6. FATAL
마지막 단계인 만큼 이벤트나 메시지의 심각성 중요성이 가장 높은 로그 레벨이다.
즉, 아주 아주 심각한 문제나 에러를 기록할 때 사용해야하는 로그 레벨이다.
FATAL 로그 레벨은 어플리케이션 실행 자체가 안될정도의 심각성을 가진 에러를
기록할 때 사용되는데 보통 일반적으로 개발할 때 사용할 일이 많이 없다고 한다.
(실행 자체가 안 될 정도라면 그 에러를 무조건 해결할 수밖에 없는데
그러면 다 해결이 되므로 굳이 기록에 남길 이유가 없지 않아서 사용을 할 일이 없는 것이 아닐까,,
라고 생각해본다! --> 화자의 뇌 피셜이다,,)
* 참조 및 참고
- 로그 레벨 설명 및 warn,error 구분 사용예시 : https://jojoldu.tistory.com/712
1. 효율적으로 로그 모니터링하기 - 로그 레벨 구분하기
365/24 로 관리하는 시스템에서 로그는 굉장히 중요하다. 하지만 로그가 중요하다는 생각에 무분별하게 남기는 것은 좋지 않다. 대표적인 예로 습관적으로 예외 상황이 발생하면 ERROR 레벨로 로그
jojoldu.tistory.com
- 로그 레벨 종류 : https://xxvigrufv.tistory.com/2
로그 레벨 종류 (Logging Level)
log4j에서는 기본적으로 debug, info, warn, error, fatal의 다섯 가지 로그레벨이 있다. TRACE > DEBUG > INFO > WARN > ERROR > FATAL 순 입니다. - TRACE : log4j1.2.12에서 신규 추가된 레벨으로서. 디버그 레벨이 너무 광
xxvigrufv.tistory.com
'Java' 카테고리의 다른 글
[Log]로그 vs 로깅 (0) | 2024.07.05 |
---|---|
[정보처리기사]21년도_3회차_연산자 (0) | 2023.07.21 |
[정보처리기사]20년도_4회차_오버라이딩 (0) | 2023.07.21 |
JDBC (1) | 2022.12.22 |
참조 타입 (0) | 2022.12.09 |