Remko Popma created LOG4J2-222:
----------------------------------

             Summary: Async Logger threadpool not shut down by Tomcat shutdown
                 Key: LOG4J2-222
                 URL: https://issues.apache.org/jira/browse/LOG4J2-222
             Project: Log4j 2
          Issue Type: Bug
          Components: Core
    Affects Versions: 2.0-beta5
            Reporter: Remko Popma


>From the user mailing list - conversation with Steven Yang:

Looks like Tomcat shutdown checks for memory leaks and notices that the 
Disruptor threadpool used by async loggers has not been shut down.
Is there any way to pick up a Tomcat shutdown signal and use that to trigger 
log subsystem shutdown?


-------------------------
QUOTING STEVEN:
Thanks, I tried using asyncRoot and everything seems to log fine and I do see a 
lot of logs.
And logs do seem to be flushed immediately so I do not know if the hook on 
shutdown is been called correctly or not.

I am using struts and spring so I see a lot of logs (log level at DEBUG) just 
by starting up tomcat, so I am wondering when I use <root> how come I dont see 
any log at all? how much log do I have to write before it starts to flush out? 

and one thing I found is that when I use asyncRoot and when I shutdown tomcat I 
see the following message regarding to clearing references and thread local.
The last one is related to log4j.
I am trying this on tomcat 6.0.29. 


四月 28, 2013 8:34:46 上午 org.apache.catalina.loader.WebappClassLoader 
clearReferencesJdbc
SEVERE: The web application [/test] registered the JBDC driver [org.h2.Driver] 
but failed to unregister it when the web application was stopped. To prevent a 
memory leak, the JDBC Driver has been forcibly unregistered.
四月 28, 2013 8:34:46 上午 org.apache.catalina.loader.WebappClassLoader 
clearReferencesThreads
SEVERE: The web application [/test] appears to have started a thread named 
[pool-2-thread-1] but has failed to stop it. This is very likely to create a 
memory leak.
四月 28, 2013 8:34:46 上午 org.apache.catalina.loader.WebappClassLoader 
clearThreadLocalMap
SEVERE: The web application [/test] created a ThreadLocal with key of type 
[java.lang.ThreadLocal] (value [java.lang.ThreadLocal@454e119d]) and a value of 
type [com.opensymphony.xwork2.inject.ContainerImpl] (value 
[com.opensymphony.xwork2.inject.ContainerImpl@8667df7]) but failed to remove it 
when the web application was stopped. This is very likely to create a memory 
leak.
四月 28, 2013 8:34:46 上午 org.apache.catalina.loader.WebappClassLoader 
clearThreadLocalMap
SEVERE: The web application [/test] created a ThreadLocal with key of type 
[java.lang.ThreadLocal] (value [java.lang.ThreadLocal@d7e770]) and a value of 
type [org.apache.logging.log4j.core.impl.Log4jLogEvent] (value 
[Logger=org.springframework.beans.factory.support.DefaultListableBeanFactory 
Level=INFO Message=Destroying singletons in 
org.springframework.beans.factory.support.DefaultListableBeanFactory@61e118f9: 
defining beans 
[org.springframework.context.annotation.internalConfigurationAnnotationProcessor,org.springframework.context.annotation.internalAutowiredAnnotationProcessor,org.springframewo...



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to