2016-06-01 2 views
1

내 서블릿 기반 응용 프로그램 내에서 시작 및 종료를위한 이벤트를 기록하고 싶습니다. 예상대로서블릿 컨텍스트에서 로깅이 손상됨

public class DiagnosticListener 
    implements ServletContextListener { 

    private static final Logger LOG = LogManager.getLogger(DiagnosticListener.class); 

    @Override 
    public void contextInitialized(final ServletContextEvent sce) { 
     LOG.info("Context initialized."); 
    } 

    @Override 
    public void contextDestroyed(final ServletContextEvent sce) { 
     LOG.info("Context destroyed."); 
    } 
} 

초기화 된 이벤트가 기록되어 있지만, 파괴 된 이벤트가 표시되지 않습니다 :

나는이 작업을 수행 할 수있는 ServletContextListener 인터페이스를 구현하기 위해 노력했습니다. Log4j2가 유사한 리스너를 사용하여 수명주기를 관리하는 방법과 관련이 있다고 가정합니다.이 이벤트 동안 더 이상 로깅 인프라를 사용할 수 없습니다.

종료되는 응용 프로그램에 대한 이벤트를 기록하는 방법이 있습니까?

답변

0

web4에서 Log4j의 ServletContextListener를 구성하기 전에 ServletContextListener 전에 Log4j를 초기화하고 서버를 종료해야합니다.

+0

Servlet 3.0 컨테이너에서 실행 중이며 Log4j의 서블릿 구성 요소를 수동으로 구성하지 않았습니다. –