스프링 부트 라이브러리는 로깅 라이브러리를 포함
기본적으로 아래 라이브러리 사용
SLF3J : Logback, Log4J 등 여러 로그 라이브러리를 통합해 인터페이스로 제공
Logback
private Logger log = LoggerFactory.getLogger(getClass());
private static final Logger log = LoggerFactory.getLogger(클래스명.class)
아래로 대신할 수 있다
@Slf4j 롬복 제공
두 가지 방법이 있으나 로그를 사용하면 여러 장점이 있다
실무에서는 항상 로그를 사용해야 함
log.info( );
System.out.println( );
System.out.println("name = " + name);
log.info("info log={}", name);
👇
로그가 더 많은 정보를 제공한다
시간 | 로그 레벨 | 프로세스 ID | [쓰레드 명] | 클래스명 : 로그 메세지
TRACE - DEBUG - INFO - WARN - ERROR
application.properties에 작성
logging.level.root=info
logging.level.hello.springmvc=debug
상황에 맞게 조절할 수 있다. 보통 다음과 같이 사용
개발 서버 : debug
운영 서버 : info
log.debug("data={}", data)
O
log.debug("data="+data)
X
+
를 사용해 출력하면 해당 코드의 "data="+data가 실제 연산됨
따라서 로그가 출력되지 않더라도 리소스가 낭비된다
정보
SLF4J - http://www.slf4j.org
Logback - http://logback.qos.ch
스프링 부트가 제공하는 로그 기능 - https://docs.spring.io/spring-boot/docs/current/reference/html/features.html#features.logging