You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4j-dev@logging.apache.org by "Idan Sheinberg (JIRA)" <ji...@apache.org> on 2016/01/14 08:39:39 UTC

[jira] [Commented] (LOG4J2-1098) log4j.shutdownHookEnabled=false from log4j-web ignored?

    [ https://issues.apache.org/jira/browse/LOG4J2-1098?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15097770#comment-15097770 ] 

Idan Sheinberg commented on LOG4J2-1098:
----------------------------------------

Hi all 

Not sure if this is the right place to comment , So I'll just go ahead and do that  anyways
I'm suffering from the same issue , Log4jServletContextListener calls contextDestroyed upon app shutdown and from that point on no log4j2 takes place beyond that point ( verified that with status set to trace )

shutdownHook is set to disable via the Configuration xml node in the log4j2.xml config file

Regarding spring , this seems to after servlet termination ( so beans defined in spring dispatcher servlet shut down ) but in parallel/before the spring ContextLoaderListener shutdown so no logging there.

What about proposing a temporal workaround ? deferring shutdown by invoking asynchronously from the contextDestroyed method and setting a configurable timer ( via context-param config ) ?

> log4j.shutdownHookEnabled=false from log4j-web ignored?
> -------------------------------------------------------
>
>                 Key: LOG4J2-1098
>                 URL: https://issues.apache.org/jira/browse/LOG4J2-1098
>             Project: Log4j 2
>          Issue Type: Bug
>          Components: Web/Servlet
>    Affects Versions: 2.3
>            Reporter: Robin Jansohn
>
> In the documentation it says for the System Property 'log4j.shutdownHookEnabled':
> {quote}
> Overrides the global flag for whether or not a shutdown hook should be used to stop a LoggerContext. By default, this is enabled and can be disabled on a per-configuration basis. When running with the log4j-web module, this is automatically disabled.
> {quote}
> I included the log4j-web module into my Maven project so the shutdown hook should be disabled. During initialization I can see in the debug messages that this is not the case:
> {quote}
> DEBUG Starting LoggerContext\[name=31484215\] from configuration at null
> DEBUG Starting LoggerContext\[name=31484215, org.apache.logging.log4j.core.LoggerContext@1836523\] with configuration XmlConfiguration\[location=C:\app\apache-tomcat-8.0.24\wtpwebapps\webapp\WEB-INF\classes\log4j2.xml\]...
> DEBUG *Shutdown hook enabled. Registering a new one.*
> DEBUG Starting configuration XmlConfiguration\[location=C:\app\apache-tomcat-8.0.24\wtpwebapps\webapp\WEB-INF\classes\log4j2.xml\]
> \[...\]
> {quote}
> During shutdown (more specifically the contextDestroyed method of the ServletContextListener) I try to log some messages but the Logger is already shut down and therefore swallows all log messages (see LOG4J2-658).
> Do I need to do something else to disable the shutdown hook?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: log4j-dev-unsubscribe@logging.apache.org
For additional commands, e-mail: log4j-dev-help@logging.apache.org