log4j level이 안먹을때

국물빌런·2020년 2월 1일
0

몇시간 동안 미친듯한 삽질을 해서 기록으로 남긴다.

일단 문제 상황은 log4j 설정이 안먹는것이다.

log4.xml에 분명이 logger들을 추가하고 off로 하든, error하든, warn로 하든

테스트 소스에서 실행을 하니까 계속 레벨이 무조건 info로 뜨는것 아닌가...

그래서 인터넷 찾아보니까 web.xml에 Log4jConfigListener랑 몇몇 설정을

해줘야 한다고 하더라..책에는 안적혀있는데 말이다.

근데 그거 해줘도 안됨 ㅋ

당연히 먹을리가 없지. 그건 실제 배포할 때는 src/main/resource 밑에 log4j.xml이 있는게 아니라 tomcat구조 안에 log4j.mxl이 있을테니 그 장소를 명시해주는 의미였다.

지금 나는 src/main/resource밑에 있으니 상관없음.

계속해서 삽질을 한 결과 원인은 내가 src/test/resource에 log4j.xml을 따로 만들어두고 있었다.

src/test/java에 있는 애들은 src/test/resource에 있는 log4j.xml이 우선순위가 높은데

나는 src/main/resource에 있는 log4j.xml에만 주구장창 설정했으니 될리가 없다.

src/test/resource에 있는 log4j.xml을 지우니까 잘 동작하였다.

두가지를 학습했다.

src/test/resource에 있는 log4j.xml과

src/main/resource에 있는 log4j.xml을 잘 구분할것

애초에 main에만 만들어서 쓰자..

그리고 실제 배포하여 log4j.xml파일 위치를 명시해주어야 할때는 web.xml에서 configlisterner를 등록해줄것

다음엔 같은 삽질 안하길.

profile
국물을 달라

0개의 댓글