[Spring] Log Level - 로그 레벨

김피자·2023년 11월 22일
0

Spring

목록 보기
27/30

로그의 필요성

스프링 프레임워크에서 로그 레벨은 쉽게 말해 로그 메시지 중요도를 나타낸다.
로그 정보를 통해 우리는 애플리케이션이 실행되는 동안 일어나는 동작이나 에러 발생 시,해당 에러가 어쩌다 발생했는지 좀 더 상세하게 확인할 수 있다.

로그 종류는 크게 6가지로 나뉘어져 있다.

TRACE

가장 상세한 로그 레벨이다.

애플리케이션의 실행 흐름을 자세하게 추적하는 용도로 사용된다.

TRACE 로그는 디버깅과 문제 해결에 도움이 되는 세부 정보를 제공한다.

주로 애플리케이션의 내부 동작과 상태, 메소드 호출, 변수 값 등을 추적하기 위해 사용된다.
TRACE 로그는 애플리케이션의 각 단계마다 실행되는 세부 정보를 기록해 애플리케이션의 동작을 따라가며 문제를 파악하는 데 도움이 된다.

하지만, TRACE 로그는 매우 상세하고 많은 양의 정보를 기록하기 때문에, 프로덕션 환경에서는 주로 사용하지 않고 개발이나 테스트 단계에서 문제를 분석하고 디버깅할 때 활용된다.

DEBUG

애플리케이션의 상태와 흐름을 추적하고 디버깅 정보를 기록하는 용도로 사용된다.

DEBUG 로그는 애플리케이션의 중요 이벤트, 메소드 호출, 변수 값 등의 디테일한 정보를 기록하며, 개발자가 애플리케이션의 동작을 자세히 분석할 수 있게 도와준다.

주로 애플리케이션의 내부 동작을 확인하고 문제를 해결하는 데 도움이되며, 디버깅 과정에서 변수의 값 변화를 추적하거나 특정 메소드의 호출 순서를 확인하는 등의 작업에서 유용하게 활용된다.

DEBUG 로그 또한 상세한 정보를 기록하기 때문에, 개발 및 테스트 단계에서 문제를 해결하고 애플리케이션 동작을 확인하는 용도로 주로 활용된다.

INFO

애플리케이션의 주요 이벤트와 상태 정보를 기록하는 용도로 사용된다.

애플리케이션의 실행 상태를 파악하고 중요한 정보를 기록하기 위해 활용되며, 핵심적인 동작과 관련한 정보를 기록한다.

예를 들어 애플리케이션의 시작, 종료 메시지, 주요 작업 완료 여부, 요청 처리 결과 등이 포함된다.

INFO 로그는 기본적으로 중요한 정보를 제공하면서도 또 너무 상세하진 않아서, 애플리케이션의 실행 상태를 파악하는데 유용하다.

WARN

애플리케이션에서 잠재적인 문제가 발생할 수 있음을 나타내는 경고 메시지를 기록하는 용도로 사용된다.
주로 예상치 못한 동작이 발생할 수 있지만 애플리케이션은 계속 실행되는 상황에서 사용된다.

잠재적인 문제 상황을 알려주고, 애플리케이션의 실행에 영향을 주지 않는 경고 메시지를 기록한다.

예를 들어 잘못된 입력 값이나 임계값을 초과하는 상황 등 실행 중 주의를 기울여야 할 사항을 나타낸다.

WARM 로그는 애플리케이션의 정상 동작에는 영향을 주지 않지만, 잠재적인 문제의 조기 발견과 대응을 도와준다.

ERROR

애플리케이션에서 심각한 오류가 발생했음을 나타내는 로그 레벨이다.
주로 애플리케이션 실행에 치명적인 문제가 발생하여 정상적인 동작이 불가능할 때 사용된다.

예외 상황, 중요한 오류 메시지, 예상치 못한 동작 등을 기록한다.

ERROR 로그는 애플리케이션의 실행에 치명적인 영향을 주는 오류를 기록하기 때문에 문제의 근본 원인을 파악하고, 신속하게 대응하여 애플리케이션의 안정성과 신뢰성을 유지하는 데 도움이 된다.

FATAL

가장 심각한 오류를 나타낸다.

애플리케이션이 중단되는 상황에서 기록되며, 애플리케이션의 실행이 더 이상 진행될 수 없다는 것을 알려준다.

FATAL 로그는 애플리케이션의 중대한 문제를 파악하고 조치하기 위해 필요하다.

예를 들어 데이터베이스의 연결 오류, 보안 침해 또는 중요한 서비스의 중단과 관련된 문제 등이 있을 수 있다.

이번 글에서는 애플리케이션의 실행 상태와 문제를 파악하는데 중요한 역할을 하는 로그 레벨에 대해 알아보았다.
TRACE, DEBUG, INFO, WARN, ERROR, FATAL 로그 레벨은 각각 다른 목적과 상세도를 가지고 있으며, 적절하게 활용하면 애플리케이션의 동작을 모니터링하고 문제를 해결할 수 있다.

profile
제로부터시작하는코딩생활

0개의 댓글