Revision 7ba74c60
Added by Andreas Kohlbecker about 2 years ago
src/main/java/eu/etaxonomy/cdm/server/Bootloader.java | ||
---|---|---|
51 | 51 |
import org.apache.log4j.Logger; |
52 | 52 |
import org.apache.tomcat.SimpleInstanceManager; |
53 | 53 |
import org.apache.tomcat.util.scan.StandardJarScanner; |
54 |
import org.eclipse.jetty.annotations.AnnotationConfiguration; |
|
54 | 55 |
import org.eclipse.jetty.apache.jsp.JettyJasperInitializer; |
55 | 56 |
import org.eclipse.jetty.jmx.MBeanContainer; |
56 | 57 |
import org.eclipse.jetty.plus.annotation.ContainerInitializer; |
... | ... | |
763 | 764 |
cdmWebappContext.setClassLoader(classLoader); |
764 | 765 |
} |
765 | 766 |
|
766 |
contexts.addHandler(loggingConfigurator.configureWebApp(cdmWebappContext, instance)); |
|
767 |
// --- configure centralized logging |
|
768 |
// 1. remove the ch.qos.logback.classic.servlet.LogbackServletContainerInitializer to prevent from stopping the |
|
769 |
// logging context when one cdm webapp is being shut down (see https://dev.e-taxonomy.eu/redmine/issues/9236) |
|
770 |
// --> exclude the ch.qos.logback.classic.servlet.LogbackServletContainerInitializer |
|
771 |
String regexEcludePattern = ".*LogbackServletContainerInitializer"; |
|
772 |
cdmWebappContext.setAttribute(AnnotationConfiguration.SERVLET_CONTAINER_INITIALIZER_EXCLUSION_PATTERN, regexEcludePattern); |
|
773 |
// 2. wrap the context with the InstanceLogWrapper and modify class path patterns |
|
774 |
Handler contextWithCentralizedLogging = loggingConfigurator.configureWebApp(cdmWebappContext, instance); |
|
775 |
|
|
776 |
contexts.addHandler(contextWithCentralizedLogging); |
|
767 | 777 |
instance.setWebAppContext(cdmWebappContext); |
768 | 778 |
cdmWebappContext.addLifeCycleListener(instance); |
769 | 779 |
instance.setStatus(Status.stopped); |
Also available in: Unified diff
fix #9236 solving broken logging by excluding the LogbackServletContainerInitializer from the configuration