로깅(Logging)

oyeon·2021년 3월 15일
0

로깅(Logging)

  • 정보를 제공하는 일련의 기록인 로그(log)를 생성하도록 시스템을 작성하는 활동
  • 프린트 줄 넣기(printlining)는 간단한, 보통은 일시적인, 로그를 생성하기만 한다.
  • 시스템 설계자들은 시스템의 복잡성 때문에 로그를 이해하고 사용해야 한다.
  • 로그가 제공하는 정보의 양은, 이상적으로는 프로그램이 실행되는 중에도, 설정 가능해야 한다.
  • 일반적으로 로그 기록의 이점
    - 로그는 재현하기 힘든 버그에 대한 유용한 정보를 제공할 수 있다.
    - 로그는 성능에 관한 통계와 정보를 제공할 수 있다.
    - 설정이 가능할 때, 로그는 예기치 못한 특정 문제들을 디버그하기 위해, 그 문제들을 처리하도록 코드를 수정하여 다시 적용하지(redeploy) 않아도, 일반적인 정보를 갈무리할 수 있게 한다.

로그를 출력하는 방법

  • System.out.print() 이용 (초보자) - 출력되는 로그의 양, 수준 등을 설정 불가, 로그를 파일에 저장하기도 불편하고 성능 안좋음
  • 로깅 라이브러리 이용 (이 방법을 사용해야 됨)

자주 사용되는 로그 라이브러리

java.util.logging

  • JDK 1.4부터 포함된 표준 로깅 API
  • 별도 라이브러리 추가 불필요
  • 기능이 많이 부족해 다른 로그 라이브러리를 더 많이 사용

Apache Commons logging

  • 아파치 재단에 Commons 라이브러리 중에 로그 출력을 제공하는 라이브러리

Log4j

  • 아파치 제단에서 제공하며 가장 많이 사용되는 로깅 라이브러리

Logback

  • Log4j를 개발한 Ceki Gulcu가 Log4j의 단점 개선 및 기능을 추가하여 개발한 로깅 라이브러리
profile
Enjoy to study

0개의 댓글