Я использую JBoss JMX Console для мониторинга своего веб-приложения. Как я могу узнать, какие HTTP-запросы обрабатываются в любой момент времени?
Например: я вижу 25 занятых тем - я хочу знать, какие HTTP-запросы обрабатываются этими потоками.
Я использую JBoss JMX Console для мониторинга своего веб-приложения. Как я могу узнать, какие HTTP-запросы обрабатываются в любой момент времени?
Например: я вижу 25 занятых тем - я хочу знать, какие HTTP-запросы обрабатываются этими потоками.
Я не совсем уверен, есть ли возможность сопоставить конкретный запрос с потоком, но вы определенно можете увидеть, какие HTTP-запросы отправляются Tomcat, используя AccessLogValve. Вероятно, вы можете использовать временные метки для сопоставления этих запросов, если это необходимо.
Джаспер;
Трудный способ сделать это - изучить каждый экземпляр MBean-компонентов, имеющих этот шаблон:
jboss.web:name=HttpRequest1,type=RequestProcessor,worker=http-0.0.0.0-18080
Это MBean-компоненты, которые представляют потоки обслуживания веб-запросов, и у них есть атрибут под названием currentQueryString, который представляет собой строку запроса, обрабатываемого в данный момент. Также есть атрибуты для currentUri и method. Вы также можете создать сценарий для сбора этих данных.
Более простой способ, который включен на серверах JBoss по умолчанию, - это использовать доступный по адресу:
http://localhost:8080/web-console/status
Он легко объединяет те же MBean и сообщает о них на одной странице.
Также есть варианты для более полного отчета
http://localhost:8080/web-console/status?full=true
и вывод в формате XML
http://localhost:8080/web-console/status?XML=true