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 "Ralph Goers (JIRA)" <ji...@apache.org> on 2015/08/26 19:11:45 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=14715170#comment-14715170 ] 

Ralph Goers commented on LOG4J2-1098:
-------------------------------------

No, you should not have to.  The web module includes log4j2.component.properties which has in it 

log4j.shutdownHookEnabled=false

This should be sufficient to cause the shutdown hook to be disabled.  Although you see that message, the code that is called to add the shutdown hook checks the property and if it is false it doesn't actually add it.  This is a bit misleading and should be addressed.

The web module disables the shutdown hook because it shuts down log4j when the servlet context is destroyed. So even though the JVM shutdown hook is disabled, the servlet container's shutdown logic is still enabled.

> 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