Оттуда вытащите дамп потока из Tomcat. Я хочу отслеживать текущие потоки на Tomcat в определенное время.
Примечание: Я делал это в веб-логике, но я не знаю, как это сделать на Tomcat.
Оттуда вытащите дамп потока из Tomcat. Я хочу отслеживать текущие потоки на Tomcat в определенное время.
Примечание: Я делал это в веб-логике, но я не знаю, как это сделать на Tomcat.
Если вы используете Linux, вы можете отправить kill -3 [pid вашего tomcat] и сбрасывать все текущие потоки в файле catalina.out.
добавить java мелодию на ваш сервер https://code.google.com/p/javamelody/
он дает вам много информации, включая потоки во время выполнения
Существует простой способ мониторинга потоков tomcat и создания дампа. Запустите tomcat с помощью следующих вариантов java:
-Dcom.sun.management.jmxremote.port=<some free port>
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.authenticate=false
После перезапуска tomcat вы можете просто запустить jconsole (часть jdk) или visualvm и создать новое соединение jmx с портом, который вы выбрали выше.
В обоих инструментах у вас также есть возможность взять дамп;)
!!! Но делайте это только в закрытой/защищенной среде - поскольку нет набора подлинности.!!!
Попробуйте профилировать netbeans для профилирования любых веб-приложений.
Следующие шаги помогут вам получить текущие потоки Java и проанализировать их:
[email protected]:~# sudo -u $TOMCAT_USER $JAVA_HOME/bin/jstack -J-d64 -l $(ps aux | grep '[c]atalina' | awk '{print $2}') > ~/threads.log
Примечание. Замените $JAVA_HOME
на ваш путь к вашему текущему JDK, $TOMCAT_USER
с пользователем, работающим с Tomcat; если вы пропустите неправильного пользователя или даже используете root, вы получите сообщение об ошибке:
3047: well-known file is not secure