Spring Boot (Maven)

스프링부트 백그라운드5 ( 로깅처리 )

pjh8838 2024. 6. 8. 20:07
반응형

https://docs.spring.io/spring-boot/docs/2.7.18/reference/htmlsingle/#features.logging

  1) 개요
   - System.out.println 대신 특정 값(로그값)을 상황(레벨)에 맞게 콘솔(파일)에 출력.

  2) 로그처리를 전문적으로 해주는 라이브러리

     - log4J 라이브러리 => log4jPrint()
     - logback 라이브러리 ( boot 기본 로깅담당 )  => logbackPrint()

 

=> 두개가 사용하는 방법이 다르면 개발자가 힘들기 때문에 

      사용 방법을 통일시켰다 ( SLF4J )

 

* 로깅처리 구조  ( 인터페이스를 만들고 implements로  log4J   logback 들을 받아서   log() 메서드로 통일한다 )

         SLF4J ( 인터페이스, 스펙 ) - log()
          |
          | 구현 ( implements )
      log4J   logback

 


로깅레벨


       trace
       debug
       info ( 기본 )
       warn
       error
  
    ==> application.properties 에 로깅레벨을 설정.
    ==> 동작방식은 지정된 레벨 포함한 하위 레벨까지 로깅처리됨. 

 

 

boot에서 로깅처리를 담당하는 의존성이 있음
  
     spring-boot-starter 의 서브로
       spring-boot-starter-logging 이 담당
          log4J
          logback
          slf4j


적용

밑에껀 패키지 로깅레벨( 둘중 하나만 쓰면 됌 )

 

사용자 지정 로그 출력 ( 로깅레벨 지정 후 )

 

main 메서드 안에 쓰기도 쓰지만 CommandLineRunner를 받아서 run 메서드 안에 로직을 작성한다

 

 

slf4j 인터페이스로 Logger 생성

 

 

 

 

 

실행시키면 로깅레벨에 따라서 콘솔에서 확인 할 수 있음

       trace
       debug
       info ( 기본 )
       warn
       error

 

=> info면 error, warn, info까지

 

 


 

 

파일로 저장

 

 

로그에 레벨별 색깔을 줄 수 있다

 

 

spring.output.ansi.enabled이 안먹힐때

체크 해제하기

728x90
반응형