728x90
로깅 레벨의 의미 및 설정
로깅 레벨은 애플리케이션의 실행 상황을 다각도로 파악할 수 있도록 도와주는 각기 다른 중요도를 가진 로그 메세지이다
기본설정은 info 레벨이며 , 필요시 debug , trace 레벨로 조정이 가능하다
조정 : application.properties 에서 설정
- logging level
TRACE : DEBUG 보다 더 상세한정보를 표시한다.
DEBUG : 내부 실행 상황을 추적하기 위한 정보 (MyBatis SQL log 확인가능.)
INFO : 주요 실행정보 , 상태 변경 사항 등을 표시한다.
WARN : 잠재적인 위험을 알리는 경고성 메세지
ERROR : 오류 발생헀으나 애플리케이션이 계속 실행 가능한 상황
FATAL : 애플리케이션 주지를 요구하는 심각한 에러 발생
logger 사용 방법 및 예시
1. Logger 클래스 이용
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
private static final Logger logger = LoggerFactory.getLogger(HomeController.class);
로거 생성시 전역에서 사용가능한 static final 의 형태로 선언한다.
- 로그 메세지 출력 방법
- String 결합방식 : + 연산자를 이용해 문자열 합산
- {} 활용 방식 : 변수값 위치를 지정하여 쉽게 출력한다 (printf와 유사하다)
String name = "홍길동";
int age = 99;
logger.info("Log Test => name : {} , age => {}", name, age);
- 출력 결과
INFO c.e.demo01.controller.HomeController : Log Test => name : 홍길동 , age => 99
2. Lombok의 @Log4j2 사용
import lombok.extern.log4j.Log4j2;
@Log4j2
log.info("Lombok의 @Log4j2 사용");
Lombok의 @Log4j2 애너테이션을 통해 손쉽게 로거를 설정할 수 있다.
- Lombok의 특징: {} 형식으로 변수 대입이 불가하여 +로 문자열 연산을 사용한다.
log.info("Lombok Test [info]=> name : " + name + ", age => " + age);
로그 레벨 설정 (application.properties)
# 기본 전체 레벨 설정 (필요시 사용)
#logging.level.root=info
# 특정 패키지 이하 로그 레벨 설정
logging.level.com.example.demo01=debug
이를 통해 특정 패키지나 전체 어플리케이션에 대해 세분화된 로그 레벨을 설정 할 수 있다.
'Developer > Spring eGov4.0 (Java11, Tomcat9)' 카테고리의 다른 글
Spring , passwordEncoder (0) | 2024.10.28 |
---|---|
Spring , service 의 구현 (0) | 2024.10.27 |
Spring , 기본 mvc 패턴 제작형식 , 주요 애노테이션 (1) | 2024.09.27 |
spring , service를 나누는 이유 (0) | 2024.09.27 |
Spring, 스프링의 MVC (1) | 2024.09.26 |