logback 설정하기

Reading time ~1 minute

출력로그 설정하기

logback의 설정 파일인 logback.xml을 이용하여 출력 로그에 대한 설정을 바꿀 수 있다.

상세한 내용은 공식 홈페이지를 참조하면 된다.


색 바꾸기

  • %highlight를 이용하여 로그 레벨에 따른 색을 줄수 있다.

  • %black, %red, %green, %yellow, %blue, %magenta, %cyan, %white, %gray, %boldRed, %boldGreen, %boldYellow, %boldBlue, %boldMagenta, %boldCyan, %boldWhite를 이용 할 수도 있다.

  • 적용 범위는 ()로 %highlight([%-5level]) 이와 같이 사용 가능하다.

    <Pattern>%d{HH:mm:ss.SSS} [%-5level] [%thread] [%logger{36}] - %m%n</Pattern>
    

    log1

    위와 같은 출력을

    <Pattern>%d{HH:mm:ss.SSS} %highlight([%-5level]) [%thread] %cyan([%logger{36}]) - %m%n</Pattern>
    

    log2

    이렇게 바꿀 수 있다.

윈도우의 경우

  • org.fusesource.jansi:jansi:1.8 가 필요하며 (Linux ,Mac OS X는 기본적으로 지원) <withJansi>true</withJansi> 설정 한 후 사용해야 한다.

    <configuration debug="true">
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
      <!-- On Windows machines setting withJansi to true enables ANSI
           color code interpretation by the Jansi library. This requires
           org.fusesource.jansi:jansi:1.8 on the class path.  Note that
           Unix-based operating systems such as Linux and Mac OS X
           support ANSI color codes by default. -->
      <withJansi>true</withJansi>
      <encoder>
        <pattern>[%thread] %highlight(%-5level) %cyan(%logger{15}) - %msg %n</pattern>
      </encoder>
      </appender>
      <root level="DEBUG">
        <appender-ref ref="STDOUT" />
      </root>
    </configuration>
    

    현재 윈도우가 아닌 관계로 정확히 어떻게 적용 해야하는지 확인은 안됐다.


고정폭

  • %숫자는 출력 고정폭 값으로 -의 유무는 좌우를 결정 짓는다.

    log5

    log3

    log4

    순서대로 [%level] [%-8level] [%8level]


기본적인 설정에서 추가로 적용한 두 가지만 작성했는데 추후 적용하는 것들이 생기면 내용을 추가할 예정이다.