Подтвердить что ты не робот

Jstack и Jstat перестали работать с обновлением до JDK6u23

Недавно мы обновили JDK6u20 (Linux, 32bit и 64bit) до JDK6u23. С тех пор мы не можем больше использовать инструменты jstack и jstat для получения информации мониторинга из текущего процесса. Если мы вернемся к JDK6u20, все будет хорошо.

Мы работаем с Tomcat 6. Согласно этому сообщению на форуме, у других проблемы одинаковые: http://forums.oracle.com/forums/thread.jspa?threadID=2151967&tstart=0

Запуск простых простых процессов Java и использование инструментов.

Jstack говорит: не удается открыть файл сокета: целевой процесс не отвечает или не загружен VM HotSpot. Опция -F может использоваться, когда целевой процесс не отвечает.

Jstat говорит: 19799 не найден

Использование Jps вообще не отображает запущенные процессы, поэтому я предполагаю, что проблема имеет более общий характер с JDK6u23, а также JDK6u24. У этого есть новый двигатель Hotspot. Возможно, что-то не работает в сочетании с Tomcat и Hotspot v19.

Любая идея? Помощь приветствуется.

P.S. Конечно, мы запускаем это как один и тот же пользователь, и мы ничего не изменили. Только JDK.

4b9b3361

Ответ 1

Найденный возможный ответ на форуме Oracle:

Хотя это правда, что 6u23/24 представляет эту проблему, это не ошибка в jps. Скорее изменение в поведении самой ВМ. В GNU/Linux Jps и подобных кажется, что они смотрят только на /tmp, но не обязательно на ваш CATALINA_TMPDIR. Если установлено или нет, попробуйте экспортировать CATALINA_TMPDIR =/tmp, который переводится в "-Djava.io.tmpdir =/tmp", и после перезапуска процесса Tomcat вы должны увидеть данные Tomcat как "/tmp/hsperfdata_/", а Jps, скорее всего, снова работайте.