길민호(ethan.mino)
코딩수첩
길민호(ethan.mino)
전체 방문자
오늘
어제
  • 분류 전체보기 (215)
    • Computer Science (0)
    • Web (6)
      • CSS (0)
      • HTML (0)
    • Node.js (0)
    • Javascript (2)
    • Java (46)
      • Spring (27)
      • Jsp (0)
    • C\C++ (2)
    • Programming (0)
    • AI (0)
    • Database (7)
    • Git (5)
    • Algorithm (119)
      • Stack (0)
      • Queue (0)
      • Linked List (0)
      • Sort (0)
      • Simulation (27)
      • Recursion (0)
      • Backtracking (4)
      • Two Pointer (3)
      • Dynamic Programming (19)
      • Greedy (10)
      • Graph (3)
      • Dijkstra (1)
      • BFS\DFS (8)
      • Floyd (1)
      • MST (4)
      • Tree (4)
      • Binary Search (8)
      • Binary Search Tree (4)
    • IntelliJ (4)
    • Vscode (0)
    • Operating System (0)
    • 후기 (3)
    • 성장일지 (13)
    • 스터디 (7)
    • 설치 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • ㅡ

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
길민호(ethan.mino)

코딩수첩

Java/Spring

로깅(Logging)이란?

2020. 7. 20. 08:51

운영 중인 웹 어플리케이션이 문제가 발생했을 경우, 문제의 원인을 파악하려면 문제가 발생했을 때 당시의 정보가 필요하다.

이런 정보를 얻기 위해서 Exception이 발생했거나, 중요 기능이 실행되는 부분에서는 적절한 로그를 남겨야한다.

 

로깅이란?


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

로그를 출력하는 방법


  • System.out.println() 이용
  • 로깅 라이브러리 이용

 

로그 라이브러리 종류


  • java.util.logging
    • JDK 1.4부터 포함된 표준 로깅 API
    • 별도 라이브러리 추가 불필요
    • 기능이 많이 부족해 다른 로그 라이브러리를 많이 사용
  • Apache Commons logging
    • 아파치 재단의 Commons 라이브러리 중에 로그 출력을 제공하는 라이브러리
  • Log4j
    • 아파치 제단에서 제공하며 가장 많이 사용되는 로깅 라이브러리
  • Logback
    • Log4j를 개발한 Ceki Gulcu가 Log4j의 단점 개선 및 기능을 추가하여 개발한 로깅 라이브러리

 

참조 URL

  • https://www.edwith.org/boostcourse-web/lecture/16813/

'Java > Spring' 카테고리의 다른 글

Multipart란?  (1) 2020.07.22
SLF4J란?  (0) 2020.07.20
Spring Security  (0) 2020.07.18
아큐먼트 리졸버란?  (1) 2020.07.17
인터셉터(Interceptor)란?  (0) 2020.07.17
    'Java/Spring' 카테고리의 다른 글
    • Multipart란?
    • SLF4J란?
    • Spring Security
    • 아큐먼트 리졸버란?
    길민호(ethan.mino)
    길민호(ethan.mino)
    💻 호기심 많은 서버 개발자 길민호입니다.

    티스토리툴바