Tomcat – Monitor Tomcat-JDBC connections

javajdbcnagiostomcat

The company that I work for sells a java web application that runs in Tomcat. The primary problems we have are that the tomcat containers become unresponsive and need to be restarted and that the connection between the application and the database (Oracle or SQL Server) becomes unstable. I'd really like to find a way to monitor both pieces of the application and alert us if any of our production sites go down.

Monitoring the Tomcat containers is simple using Nagios. The problem is that the front page of the site will show up but the database connection will be broken. A user will see the front page and then be able to login and then see a failure. We'd like to start catching those failures before our clients do.

Anybody have any solutions to this? I haven't been able to find much online.

Thanks!

Nate

Best Answer

You need to either use a plugin that can simulate the login, like webinject or check_selenium, or expose some status page from your web app. You can have a static page that you can check for some status code (using check_http).

If you want to get fancy, you can expose some status via JMX, and use one of the many JMX plugins. This would probably be the "proper" way to do it, but also the most work.