Appender : 로그 메세지가 출력될 대상 결정
Encoder : 로그 메세지를 사용자가 정의한 포맷으로 변환
Logger : 실제 로깅 수행, 패키지별 로거 설정 가능
여러개의 appender를 하나의 logger에 참조하게 할 수 있음
member 패키지용 로거, comment 패키지용 로거
로그 레벨 설정 가능(로그 메세지가 나타내는 중요도)
로그 레벨을 설정할 경우 특정 레벨 이상의 로그만 출력됨
Filter : 출력할 로그 이벤트 필터링
Spring Boot는 기본적으로 Logback 사용하도록 설계
사용자 생성 로그를 직접 출력 가능
@RestController
@RequiredArgsConstructor
public class WebController {
private final WebService racingService;
@GetMapping
public void log() {
// 1. 로거 객체 정의
Logger logger = LoggerFactory.getLogger(WebController.class);
// 2. 메서드 호출
logger.info("info 로깅이야!!!");
}
@Slf4j
@RestController
@RequiredArgsConstructor
public class WebController {
private final WebService racingService;
@GetMapping
public void log() {
// 로거 정의를 자동으로 해주기 때문에 메소드만 호출하면 됨
log.trace("trace 로깅이야!!!");
log.debug("debug 로깅이야!!!");
log.info("info 로깅이야!!!");
}
스프링 부트 기본 로그 레벨 설정 INFO
로그레벨 설정, Appender 및 Filter 적용 위해서는 logback-spring.xml
설정 파일 작성 필요