2017-07-17 9 views
0

Un de mon application jboss s'est soudainement arrêté et le fichier core dump a été généré dans/var/crash/path avec l'ID du processus. Il n'y a pas de journal généré au même endroit. La version Java est java-1.7.0-openjdk-1.7.0.45.x86_64. Je veux savoir pourquoi mon application a été tuée et ce fichier a été généré. Je soupçonne une fuite de mémoire qui a causé cet échec. Mais il n'y a aucune trace dans le journal d'application. Comment déboguer ce fichier de vidage de code (son environ 6 Go)Comment vérifier la fuite de mémoire de l'application Java dans un fichier de vidage de mémoire?

+0

Si cela n'a jamais eu lieu avant la première chose que doivent faire est d'essayer de le reproduire. Dans le cas où vous trouvez quelque chose si vous ne pouvez pas le reproduire, comment prévoyez-vous de le réparer? – efekctive

+0

Ce problème s'est produit dans mon système de production où je ne peux pas faire de test. Malheureusement, je ne suis pas capable de le reproduire dans mon environnement de test. De la production j'ai eu le fichier de vidage de noyau seulement, aucune trace du journal d'application –

+0

Il exige toujours la lecture du vidage de noyau. Pouvez-vous l'afficher? J'ai peur que vous deviez attendre que cela se reproduise pour vraiment commencer à le réparer – efekctive

Répondre

0

Depuis que je ne peux pas voir notre fichier de vidage, donc je ne peux pas dire exactement sa fuite de mémoire. Pour la vérification des fuites de mémoire, de nombreux outils sont disponibles dans les applications en cours d'exécution. A l'intérieur de JDK, l'outil VisualVM est également présent dans le dossier "JDK/bin". Vous pouvez pointer vers votre serveur de production.

D'autres solutions multiples sont fournies @https://developers.redhat.com/blog/2014/08/14/find-fix-memory-leaks-java-application/