Как узнать общее количество запросов, обработанных сервером tomcat?


Я хочу разместить сервер tomcat, на котором будут размещены 3 веб-приложения. Я хочу получить общее количество запросов, обработанных моим сервером (для любого из 3 веб-приложений). Есть ли какой-либо журнал, из которого я могу проверить общее количество запросов, обработанных моим сервером (включая HTTP 404 запроса)

Примечание: я могу вычислить общее количество запросов, обработанных каждым отдельным приложением, и получить общее количество запросов, обработанных моим сервером, но приложения, развернутые в tomcat-это третья сторона, и я не могу вносить в него какие-либо изменения.

В основном, я создаю приложение мониторинга для сервера tomcat, и я должен предоставить общее количество запросов, обслуживаемых в Приложении,

Кроме того, моей первой мыслью было пересилить конструктор класса HTTPServletRequest в servlet-api.банку и поставить статический счетчик. поскольку каждый запрос сопоставляется с объектом HTTPServletRequest, я думаю, что он выполнит эту работу. Но является ли это хорошей идеей, чтобы перегнать HTTPServletRequest или существует ли какое-либо существующее решение для этого?

2 4

2 ответа:

Если вы решите переопределить класс HTTPServletRequest, не просто добавьте статический счетчик, это заставит ваш счетчик сбрасывать себя каждый раз, когда сервер выходит из строя/перезагружается jvm.

Я думаю, что было бы лучше либо увеличивать его из базы данных, либо сохранять значение в файле каждый раз. Таким образом, вы не потеряете счет, даже если что-то случится с сервером, и вам придется его перезапустить.

Это все при условии, что уже не существует расширения Apache, которое уже дозируйте это, и вы действительно хотите поработать с классом HTTPServletRequest.

Вы можете использовать специальный фильтр под названием фильтр самосвал запросу для этой цели.

Согласно официальной документации Tomcat:

The following entries in a web application's web.xml would enable the Request Dumper 
filter for all requests for that web application. If the entries were added to 
CATALINA_BASE/conf/web.xml, the Request Dumper Filter would be enabled for all web 
applications.