Автоматическое получение дампов потоков или дампов кучи

Я пытаюсь отслеживать приложение Java в течение длительного периода времени.

Я хочу автоматически получить дамп потока или дамп кучи, если количество потоков или кучи превышает некоторый порог.

Доступна ли эта функция через VisualVM, Mission Control или другой инструмент профилирования?


person DarVar    schedule 16.07.2014    source источник


Ответы (1)


Запустите консоль JMX в Java Mission Control.

Перейдите на вкладку «Триггеры» и выберите правило триггера «Количество потоков» или «Живой набор». Вы можете выбрать порог и действие, которое необходимо предпринять. Если вы используете JDK 8, я думаю, вы можете вызвать диагностическую команду, например Thread.print. Также возможно создать дамп записи полета, которая содержит, среди прочего, дампы потоков.

person Kire Haglin    schedule 17.07.2014