로그 레벨
- TRACE : 추적 레벨은 DEBUG보다 좀 더 상세한 정보를 표시
- DEBUG : 프로그램을 디버깅하기 위한 정보를 표시 (운영 서버에서는 표시하지 않도록 설정)
- INFO : 상태 변경과 같은 정보성 로그를 표시
- WARN : 처리 가능한 문제, 시스템 에러의 원인이 될 수 있는 경고성 메시지를 표시
- ERROR : 요청을 처리하는 중 오류가 발생한 경우 표시
※ 로그 레벨로 설정한 값 이상의 로그가 출력됨 (EX: 로그 레벨 INFO : INFO, WARN, ERROR가 출력됨)
Yaml 단순 설정
# log
logging:
level:
root: INFO
org:
hibernate:
SQL: OFF
type:
descriptor:
sql:
BasicBinder: OFF
file:
name: ${user.dir}/log/application.log # 로그 파일 위치. 프로젝트 최상위 경로에 log 폴더가 생성됨
logback:
rolling-policy:
max-history: 7 # 로그 파일 삭제 주기
max-file-size: 10MB # 로그 파일 하나당 최대 파일 사이즈
더 복잡한 설정을 사용하려면 resource 폴더에 logback-spring.xml 파일을 생성하여 설정
- 대소문자 구별 X
- 크게 appender와 logger를 사용하여 설정
- appender - 로그의 출력 형태(콘솔, 파일) 설정
- logger - 로거마다 이름을 부여하여 사용, 패키지별 원하는 출력 레벨값 설정 (전역 설정 최상위 로거 = root)
테스트
로깅
log.trace("가장 디테일한 로그");
log.debug("디버깅용 로그");
log.info("정보성 로그");
log.warn("경고");
try{
throw new Exception("Test Exception");
} catch (Exception e) {
log.error("에러",e);
}
결과
2022-08-23 10:22:39.085 INFO 6783 --- [nio-8080-exec-2] c.d.study.web.controller.TestController : 정보성 로그
2022-08-23 10:22:39.085 WARN 6783 --- [nio-8080-exec-2] c.d.study.web.controller.TestController : 경고
2022-08-23 10:22:39.089 ERROR 6783 --- [nio-8080-exec-2] c.d.study.web.controller.TestController : 에러
java.lang.Exception: Test Exception
...
현재 INFO 레벨까지만 출력되도록 설정하여 trace, debug는 출력되지 않음
728x90
'# Back-End > Spring' 카테고리의 다른 글
JPA Batch Insert/Update를 적용하여 성능 향상하기 (0) | 2023.04.15 |
---|---|
@Transactional 어노테이션을 이용한 트랜잭션 관리 (0) | 2023.04.08 |
[Spring Data JPA] Pageable을 이용한 Paging 조회 (0) | 2022.10.01 |
Spring Boot Java 8에서 11로 업그레이드 (0) | 2022.08.11 |
[Spring] POI 라이브러리를 이용한 Excel 생성 (0) | 2022.04.23 |
Multi module 프로젝트 구성 (0) | 2022.04.10 |
[Spring] 인텔리 J에 환경변수, VMware Option 설정 (0) | 2022.03.19 |