2016-11-29 1 views
0

Hadoop jvm процесс зависает без какого-либо сообщения об ошибке, Я хочу посмотреть, что делают JVM-процессы (где они застревают).Hadoop jvm процесс зависает без какого-либо сообщения об ошибке,

Когда я программировал на C++, я использовал GDB, который можно подключить к запущенному процессу и показать стек вызовов потоков.

Как я могу сделать то же самое для JVM?

+0

JDB является хорошим инструментом для этого – syko

ответ

1

Вы можете использовать следующую команду

kill -3 [PID] 

Это напечатает трассировку стека всех потоков на консоль вашего процесса Java. Другой вариант - использовать утилиту jstack, которая поставляется вместе с jdk. Jstack делает то же самое.

Если это не поможет, то профилировщики должны помочь. Они могут собирать намного больше данных, чем один дамп потока.

Смежные вопросы