We have several webapps deployed to a single Tomcat 7 server. Is there a way to monitor the status (uptime, memory usage, etc.) of each webapp deployed to a Tomcat server?

We are using Nagios to monitor basic server status (ie. disk usage, ping, memory usage, etc.), and would be great if we can integrate each webapp status into Nagios as well.

We would also like such integration to alert whenever a webapp reaches a certain threshold limit for memory usage.

EDIT: We're running Tomcat on Ubuntu.

Is there such a way?



You should take a look at JavaMelody and PSI Probe:

The goal of JavaMelody is to monitor Java or Java EE application servers in QA and production environments. It is not a tool to simulate requests from users, it is a tool to measure and calculate statistics on real operation of an application depending on the usage of the application by users.


PSI Probe is a community-driven fork of Lambda Probe distributed under the same open-source license (GPLv2). It is intended to replace and extend Tomcat Manager, making it easier to manage and monitor an instance of Apache Tomcat.


  • Thanks for the suggestions. Will look into PSI probe and see what we can get from there. – Shane Oliver Aug 2 '11 at 4:40
  • I've tested Javamelody, it's super-easy to use. Impressive ! – smonff Feb 2 '14 at 12:03

CA Wily Introscope is a pretty neat tool for this. Loads of features including graphs of multiple Tomcat instances' GC heap, thread count, error count, stall count, back end health, etc. Automated email alerts can also be set up to alert maintenance in case of abnormal situations.


(PS - I don't think that this one is free though. Good tool nonetheless)

Not the answer you're looking for? Browse other questions tagged or ask your own question.