Захват и анализ дампа ядра на работающем сервере приложений
Как я могу захватить Core Dump и проанализировать кучу Java в приложении, работающем в Apache Tomcat?
2 ответа
Javacore может быть вызван вручную (при условии, что JVM настроен на дамп по сигналу пользователя - как правило, так и есть).
- В Windows: нажмите ControlBreak в командном окне, чтобы создать дампы.
- В Linux: нажмите Control\ в окне оболочки.
- На *nix или используя Cygwin:
kill -quit <pid>
В общем, запустите Tomcat с консоли, а затем, в зависимости от вашей платформы, выполните один из приведенных выше вариантов. Это создаст javacore, который можно анализировать с помощью различных инструментов, например, Visual VM и т. Д.
VisualVM
обеспечить широкий диапазон тестирования памяти для любого приложения, работающего с Java. У меня нет особого представления об анализаторе памяти Tomcat, но я бы предпочел VisualVM
Загрузить: https://visualvm.java.net/
VisualVM - это визуальный инструмент, объединяющий несколько инструментов JDK из командной строки и облегченные возможности профилирования. Разработанный для использования как в процессе производства, так и во время разработки, он дополнительно расширяет возможности мониторинга и анализа производительности для платформы Java SE.
Скриншот кучи дампа.