Как снять дамп потока в среде Linux с помощью сервера jboss-eap-5.1

Как получить дамп потока в среде Linux с помощью сервера jboss-eap-5.1 И как сохранить этот файл дампа потока в определенном файле. может ли кто-нибудь поделиться командами для создания дампа потока при запуске сервера.


person user3064985    schedule 04.12.2013    source источник


Ответы (1)


Самый простой способ — получить PID сервера JBoss и jstack, который является частью HotSpot JDK (и OpenJDK, я полагаю), затем запишите вывод в новый файл. Если PID JBoss равен 1234:

jstack -l 1234 >> myThread.dmp

Двойная скобка со стрелкой создаст файл, если он не существует, или добавит к нему, если он существует, поэтому вы можете взять несколько дампов потоков и сохранить их в один и тот же файл (полезно для просмотра изменений с течением времени).

Вы можете найти PID JBoss либо с помощью команды linux ps, либо с помощью grepping для Java:

ps aux | grep java

Или просто с JPS (еще один инструмент, который поставляется с JDK) и подробной опцией "-v":

jps -v

Этот ответ применим к любому приложению Java.

Примечание. Чтобы сделать это на JRockit JVM, используйте jrcmd <pid> print_threads вместо jstack.

person Mike    schedule 04.12.2013