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 15:51:40 UTC
[jira] [Comment Edited] (LOG4J2-658) shutdown hook called too early
[ https://issues.apache.org/jira/browse/LOG4J2-658?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15097771#comment-15097771 ]
Idan Sheinberg edited comment on LOG4J2-658 at 1/14/16 2:51 PM:
----------------------------------------------------------------
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 take place 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 ) ?
was (Author: idans):
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 ) ?
> shutdown hook called too early
> ------------------------------
>
> Key: LOG4J2-658
> URL: https://issues.apache.org/jira/browse/LOG4J2-658
> Project: Log4j 2
> Issue Type: Bug
> Components: Core
> Affects Versions: 2.0-rc1, 2.0-rc2, 2.0.2
> Reporter: Romain Manni-Bucau
> Assignee: Matt Sicker
>
> Hi
> this issue follow few mail exchanges from the commons list. Here the interesting part for log4j2:
> {quote}
> Here what I do (we can move it to another thread since that's 100% log4j2 related):
> unzip apache-tomee-1.7.0-SNAPSHOT-webprofile.zip &&
> cd apache-tomee-webprofile-1.7.0-SNAPSHOT/ &&
> rm conf/logging.properties &&
> echo 'openejb.log.factory=log4j'>conf/system.properties &&
> cp ~/log4j2.xml conf/log4j2.xml &&
> cp ~/.m2/repository/org/apache/logging/log4j/log4j-api/2.0-rc2-SNAPSHOT/log4j-api-2.0-rc2-SNAPSHOT.jar lib/ &&
> cp ~/.m2/repository/org/apache/logging/log4j/log4j-core/2.0-rc2-SNAPSHOT/log4j-core-2.0-rc2-SNAPSHOT.jar lib/ &&
> cp ~/.m2/repository/org/apache/logging/log4j/log4j-1.2-api/2.0-rc2-SNAPSHOT/log4j-1.2-api-2.0-rc2-SNAPSHOT.jar lib/ &&
> ./bin/catalina.sh
> it makes server starting with log4j2 logs, if you ctrl+c logs are not printed. Sure it is cause context is closed too early and then loggers have NullConfiguration. (If I debug in java.lang.ApplicationShutdownHooks#runHooks to wait all hooks exec it works)
> {quote}
> Basically the issue is that when shutting down with ctrl+C some logs are swallowed.
--
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