누군가 예쁘게 수정 해놓은 애플리케이션에 분명 오류가 발생하고 있는데 server.log에 로그가 기록되지 않고 있었다. 첫번째로 확인 한 건 애플리케이션 경로 내의 log4j 설정 파일이다. level이 "off"로 되어 있었고, "INFO"로 수정했다.

<!-- 생략 -->
    <root>
          <!-- 기존 -->
          <level value="off"/>
          <!-- 변경 -->
          <level value="INFO"/>
    </root>
<!-- 생략 -->

 

재기동해도 로그가 기록되지 않는다. jboss-deployment-structure.xml 파일에서 logging subsystem을 제외해보라는 답변을 발견해서 내용을 추가했다.

<!-- 생략 -->
        <exclude-subsystems>
              <subsystem name="logging"/>
        </exclude-subsystems>
<!-- 생략 -->

 

더 찾아봤을 때, JBoss는 기본적으로 애플리케이션의 로그는 server.log에 통합 관리하려고 하다보니 애플리케이션의 log4j 설정보다 JBoss의 logging이 우선순위를 갖게 된다. 그래서 "off"에서 "INFO"로 수정해도 로그가 기록 되지 않았고, logging subsystem을 제외하고 나서야 로그가 기록 되기 시작한 것이었다. 해당 subsystem을 제외하지 않고 등록을 해줘도 되는데, 패키지 경로가 가끔 다른게 튀어나오기도 하다보니 그냥 이대로 두기로.

+ Recent posts