헤르메스 LIFE

[Log4j] log4J 에서 콘솔창에 두번씩 sql이 나오는 이유 본문

Spring Framework

[Log4j] log4J 에서 콘솔창에 두번씩 sql이 나오는 이유

헤르메스의날개 2012. 6. 13. 16:05
728x90
원문 :  http://jhoonslife.tistory.com/76

log4j.xml
에서 로거의 특성상 상위의 모든 로거가 출력 되게 되어있다.
로거를 아래와 같이 정의를 하게 되면


root 로거와 jdbc.sqlonly 로거 두개가 남게 된다.
따라서 상위 로거 모두 출력하는 log4j의 특성 때문에 서로 똑같은 로그가 두개가 남게 된다.
(아래그림 참조)


따라서 이런 것을 방지 하기 위해서는
additivity 속성을 false 로 둔 logger를 설정해 두면 된다.
이렇게 된다면 logger는 일단 출력한 후 상위 로거를 더이상 찾지 않게 된다.


따라서 두개씩 찍히던 쿼리 로그는 하나씩 찍히게 된다. 



728x90