로깅 라이브러리 Logging Library

2022. 4. 11. 07:00·Java

자바 로깅

System.Logger의 구현체로 무엇을 사용할까?

현장에서 사용하고 있는 자바 로깅의 변화

  • log4j -> logback -> log4j2
  • 최근에는 다시 log4j2를 사용하고 있는 추세라고 한다.

읽어보기

  • logback을 사용해야 하는 이유
  • Log4j2 사용
    • Logging을 구현하고 있는 구조를 알지 못하면 이해 하기 힘든 글인 것 같다.

Logger 이해하기

  • Logger는 꽤 다양한 것을 묶어 사용하게 되어 있는 것 같았다.
  • 자세하게 공부하지는 못했지만 위 2개 url 먼저 보는 것도 좋다.

SLF4J

  • SLF4J는 로깅구현체가 아닌 , Logging 라이브러리에 대한 Facade 역할을 한다.
    • 즉, 로깅 라이브러리를 변경하는 경우(log4j -> logback) 소스 코드에 대한 수정을 최소화하면서 의존 관계에 있는 라이브러리만 변경하는 것이 가능하도록 지원한다.
  • 최범균의 객체지향과 디자인패턴 책에는 SLF4J를 어댑터패턴이 적용된 예라고 소개한다.
  • SLF4J는 단일 로깅 API를 사용하면서 자바 loging, log4j, LogBack등의 로깅 프레임워크를 선택적으로 사용할 수 있도록 해준다고 한다.

LogBack

  • 프로젝트에서 LogBack을 사용했었다.
  • 일단은 LogBack을 그냥 사용하는 것으로.

로깅 패턴

%-5level : 로그 레벨, -5는 출력의 고정폭 값(5글자) (INFO, ERROR, DEBUG , 기타 등등이다.)
%d{날짜 형식 포맷} : 로그 기록시간 %d{yyyy-MM-dd HH:mm:ss} 을 사용하면 된다.

%thread : 현재 Thread 명 

%F : 로깅을 발생시킨 파일 명
%M : 로깅을 발생시킨 메소드 명

%logger{length} : Logger name을 축약할 수 있다. length는 최대 자릿수이다 (0 = 무제한)

%line : 로깅이 발생된 라인 넘버
%msg : - 로그 메시지

%n : 줄바꿈(new line) 

그외 로깅패턴은 공식문서 참고


Configuration 문법

  • 이번주 프로젝트 끝나면 정리하자.

참고 자료

  • 로깅패턴
  • configuration문법
  • https://inyl.github.io/programming/2017/05/05/slf4j.html
저작자표시 (새창열림)

'Java' 카테고리의 다른 글

Objects.requireNonNull() - java.util.Objects  (0) 2022.04.16
static  (0) 2022.04.13
정적팩토리 메서드  (0) 2022.04.09
[Java] of - 정적 팩토리 메서드  (0) 2022.03.31
JAVA11 설치하기  (0) 2022.03.12
'Java' 카테고리의 다른 글
  • Objects.requireNonNull() - java.util.Objects
  • static
  • 정적팩토리 메서드
  • [Java] of - 정적 팩토리 메서드
devstep
devstep
웹 백엔드 개발자
  • devstep
    개발 여정
    devstep
  • 전체
    오늘
    어제
    • 분류 전체보기 (89)
      • Java (24)
      • Spring Framework (16)
        • Spring (13)
        • JPA (3)
      • Database (8)
        • RDBMS공통 (1)
        • MySQL (6)
        • Redis (0)
        • Oracle (1)
      • Concept (13)
        • 테스트코드 (4)
        • 클린코드 (2)
        • 성능테스트 (4)
        • 설계 (1)
        • 인증 (1)
        • REST API (1)
      • git (2)
      • Intellij (4)
      • Computer Science (3)
        • 네트워크 (1)
        • 자료구조 (1)
        • 보안 (1)
      • Essay (17)
        • Learning Essay (10)
        • WIL (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    nofile
    비대칭암호화
    aggregate
    인텔리제이실행에러
    tdd
    테스트코드
    bean
    JavaMemoryModel
    부하테스트
    nginx
    component
    블록암호화
    storageEngine
    JMeter
    innodb
    부하테스트도구
    단위테스트
    자바메모리모델
    springsecurity
    DDD
    linux
    seed
    클린코드
    JVM
    ClusteredIndex
    보안
    대칭암호화
    applicationcontext
    성능테스트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
devstep
로깅 라이브러리 Logging Library
상단으로

티스토리툴바