Language/Java

[Java] log.debug() vs log.info() – 언제, 어떻게 써야 할까?

챠챠12 2025. 6. 23. 20:11

 

Java 또는 Spring Boot에서 로그를 찍을 때 log.debug()와 log.info()를 많이 사용합니다.

하지만 둘의 차이를 정확하게 알아서 사요에 헷갈리지 않게 적어보려고 합니다.

두 로그 레벨의 차이와 사용법을 Spring 기반의 SLF4J + Logback 환경 기준으로 정리해봅니다.

 

 

로그 레벨이란?

로그에는 여러 단계(Level)가 있으며, 각 단계는 로그의 중요도와 목적을 구분하는 기준입니다.

 

log.debug()

log.debug("디버그용 상세 로그: 변수 값 = {}", test);

  • 목적: 디버깅용 상세 정보 출력
  • 내용: 반복문 내부 값, 분기 조건, 로직 흐름 등
  • 운영 환경: 보통 DEBUG 레벨은 운영환경에선 출력되지 않도록 설정함

🟨 Tip: 성능 이슈 방지를 위해 무분별한 사용은 피하는 게 좋습니다.

 

log.info()

log.info("사용자 로그인 완료: {}", test);
  • 목적: 시스템의 정상 동작 흐름을 추적
  • 내용: 주요 처리 완료, 스케줄 실행, 외부 요청 등
  • 운영 환경: 운영 중에도 항상 출력되는 레벨

운영 로그로서 분석이나 모니터링에 유용한 로그

 

반응형