로깅

Java의 데이터 타입과 예외

Jim White

Java Developer

로그란?

  • 애플리케이션은 많은 코드 줄로 구성됩니다
    • if/then/else, for, while 등 제어 흐름이 많습니다
    • 클래스와 메서드가 많습니다
    • 전체 코드를 추적하기는 어렵습니다
  • 로그는 애플리케이션의 일지 역할을 합니다
    • 어떤 코드가 호출되었는지 기록
    • 문제/이슈가 어디서 발생했는지 기록

로그는 애플리케이션의 일지와 같아, 발생한 이벤트(좋든 나쁘든)를 추적합니다.

Java의 데이터 타입과 예외

로깅

  • Java에는 기본 로깅 기능이 있습니다
  • 로그에 어떤 텍스트를 보낼지 제어할 수 있습니다
    • 콘솔에 메시지를 남기는 System.out.println()과 유사
  • 로깅은 발생한 일을 기록합니다
    • 실행된 코드, 발생한 문제, 사용한 리소스(예: 데이터베이스) 포함
  • 로깅은 디버깅을 위해 애플리케이션 활동 모니터링과 이해를 돕습니다
  • 기록된 로그 메시지는 파일, 데이터베이스 등으로 저장할 수 있습니다
    • 과거 로그의 검토/비교가 가능합니다
Java의 데이터 타입과 예외

Java 로깅 사용하기

  • java.util.logging을 임포트
  • Logger 객체 가져오기
    • getLogger(String)으로 Logger 획득
    • String은 로거 이름
    • 보통 클래스 이름을 사용
import java.util.logging.*;

class HelloWorld {

  public static Logger logger =
    Logger.getLogger("HelloWorld");

}
1 추가 메서드는 https://docs.oracle.com/javase/8/docs/api/index.html?java/util/logging/Logger.html 참고
Java의 데이터 타입과 예외

로그 메시지 작성

public static void main (String[] args) {
  logger.log(Level.INFO,
             "This is informational");
  logger.log(Level.SEVERE,
             "This is a critical message");
}
Nov 26, 2024 12:59:29 PM HelloWorld main
INFO: This is informational
Nov 26, 2024 12:59:29 PM HelloWorld main
SEVERE: This is a critical message
Java의 데이터 타입과 예외

로그 수준

수준 순서
SEVERE 가장 중요
WARNING
INFO
CONFIG
FINE
FINER
FINEST 가장 낮은 중요도

로그 수준은 항목의 중요도를 나타냅니다

1 Image courtesy https://unsplash.com/@vendavlog
Java의 데이터 타입과 예외

연습해 봅시다!

Java의 데이터 타입과 예외

Preparing Video For Download...