J'utilise log4j2 pour la journalisation, Tomcat8 et java8 version. J'ai utilisé l'attribut "monitorInterval" pour vérifier périodiquement mon fichier log4j2.xml. Lors de l'arrêt de mon tomcat je suis confronté à un problème de fuite de mémoire.Comment résoudre ce problème de fuite de mémoire?Tomcat problème de fuite de mémoire du thread log4j2
Voici les journaux catalina:
06-Oct-2016 15: 13: 55,927 AVERTISSEMENT [localhost-StartStop-2] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads L'application web [mywebapp] semble avoir démarré un thread nommé [Log4j2-Log4j2Scheduled-1] mais n'a pas réussi à l'arrêter. Ceci est très susceptible de créer une fuite de mémoire. Empiler trace de fil: sun.misc.Unsafe.park (méthode native) java.util.concurrent.locks.LockSupport.parkNanos (LockSupport.java:215) java.util.concurrent.locks.AbstractQueuedSynchronizer $ ConditionObject.awaitNanos (AbstractQueuedSynchronizer.java:2078) java.util.concurrent.ScheduledThreadPoolExecutor $ DelayedWorkQueue.take (ScheduledThreadPoolExecutor.java:1093) java.util.concurrent.ScheduledThreadPoolExecutor $ DelayedWorkQueue.take (ScheduledThreadPoolExecutor.java:809) java.util. concurrent.ThreadPoolExecutor.getTask (ThreadPoolExecutor.java:1067) java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1127) java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:617) java .l ang.Thread.run (Thread.java:745)
Merci d'avance.
Mise à jour: mes journaux J'ai analysé, en fait le contexte enregistreur est initilising encore une fois Log4jServletContextListener est en train de détruire ..
2016-10-22 13: 49: 36347 localhost-StartStop-2 DEBUG Log4jServletContextListener veiller à ce que Log4j s'arrête correctement. 22/10/2016 13: 49: 36382 localhost-StartStop-2 DEBUG À partir LoggerContext [name = bb4719, [email protected]] ...
En fait, Dans mon application, j'utilise Spring ContextLoaderListner dans web.xml, donc il peut utiliser la journalisation en interne tout en détruisant Spring Listner.
Merci
Pouvez-vous coller des propriétés de catalina ou simplement des lignes où il est dit log4j? – bhantol
Vous pouvez suivre https://issues.apache.org/jira/browse/LOG4J2-1259 – bhantol
j'ai regardé dans log4j2-1259, je n'ai pas obtenu sa conclusion correctement. – Reetika