Tools/Eclipse & STS

[SPRING] log4j2.xml 설정 (feat. level)

썸머워즈 2019. 9. 2. 21:22
반응형

- 스프링 로그 log4j2.xml 설정하기 -


 

log를 설정할 때 level 이 쓰여있는 것이 보이는데 이 역시 단계가 존재한다.

높은 등급에서 낮은 등급으로의 6개의 로그 레벨을 가지며 지정한 레벨 등급 이상의 로그만 표출하는 방식이다.

 

일반적으로 log level은 

ALL > TRACE > DEBUG > INFO > WARN > ERROR > FATAL > OFF

순으로 볼 수 있다. ( 낮은거에서 높은순으로 ALL → OFF ) 

 

결론적으로 DEBUG 를 level로 선언했다면 DEBUG 이상의 것들의 log를 표출하는것이다.

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
    <Appenders>
        <Console name="console" target="SYSTEM_OUT">
            <PatternLayout pattern="%d %5p [%c] %m%n" />
        </Console>
    </Appenders>
    <Loggers>
        <Logger name="java.sql" level="DEBUG" additivity="false">
            <AppenderRef ref="console" />
        </Logger>
        <Logger name="egovframework" level="DEBUG" additivity="false">
            <AppenderRef ref="console" />
        </Logger>
        <Logger name="jdbc.sqltiming" level="DEBUG" additivity="false">
            <AppenderRef ref="console" />
        </Logger>
        <Logger name="org.springframework" level="DEBUG" additivity="false">
            <AppenderRef ref="console" />
        </Logger>
        <Logger name="jdbc.resultsettable" additivity="false"> 
            <level value="info" /> 
            <appender-ref ref="console-log4jdbc" />
        </Logger>
    </Loggers>
</Configuration>

보통 DEBUG를 많이 선언하며 TRACE 나 ALL같은 경우는 거의 쓰이질 않는다.

이런식으로 사용하다가 로그가 나오는게 너무 많다 싶으면 제어가 가능한데

주석처리나 지워도 상관은 없지만 OFF라는 기능을 제공하기 때문에 해당 기능을 이용하여

<Logger name="jdbc.resultsettable" additivity="false"> 
   <level value="OFF" /> 
   <appender-ref ref="console-log4jdbc" />
</Logger>

이런식으로 OFF를 사용해 해당 로그를 끌수 있다.

반응형