Могу ли я настроить профили, такие как jhat или jmap, чтобы делать снимки через равные промежутки времени или при обнаружении исключения - PullRequest
0 голосов
/ 25 января 2012

Так что в основном в нашем случае сервер загадочно выходит из строя, и мы часто перезагружаем его, и он начинает работать нормально.До сих пор мы не смогли установить образец.Просмотр дампа потоков помог, но мы также хотим проанализировать использование памяти.Могут ли эти инструменты быть настроены для работы через равные промежутки времени (чтобы они сохраняли снимки через равные промежутки времени) или всякий раз, когда он обнаруживает исключение или сбой

Ответы [ 2 ]

0 голосов
/ 08 февраля 2013

Это не приведет к полному дампу, но jstat может выполняться непрерывно, чтобы обеспечить статистику суммирования памяти с течением времени через регулярные промежутки времени:

> jstat -gccause -t <JVMID> 60s

, например, произведет пул памяти и мусорсбор статистики каждую минуту, пока вы не убьете ее с помощью Ctrl-C.

jstat может сделать намного больше, чем сборка памяти и мусора.Для получения дополнительной информации см. Справочную страницу jstat:

http://docs.oracle.com/javase/6/docs/technotes/tools/share/jstat.html

0 голосов
/ 23 февраля 2012

запустить jmap в cron?

Другой вариант - присоединить jdb к процессу .Он остановится на необработанном исключении, и вы можете получить дамп кучи, используя jmap в этом состоянии.К сожалению, сам jdb не поддерживает создание дампа кучи.

...