I want to monitor that our Tomcat application servers is up and running. The application is not hosted in-house, but at a managed hosting provider. I do not have direct access to the application servers, but I can access them through a login-server.

What is the simplest way to send an HTTP request to see if the Tomcat application servers is up?

I already have a monitor system in-house (sensu), but this system does not have direct access to the Tomcat servers either. It can only be accessed through the login-server.

                      +------+ Apache Server +------+
                      |      +---------------+      |
                      |                             |
                      |                             |
                  +---v-----------+     +-----------v---+
                  | Tomcat Server |     | Tomcat Server |
                  |    RFC1918    |     |    RFC1918    |
                  +---------------+     +---------------+

One way to do this would be to add a couple of proxy/rewrite-rules in Apache, that would give you one URL for each Tomcat.

Then you can use an ordinary http-probe on those URLs. The probes may give a false positive for the application servers if Apache is down, but that may be acceptable. This again can be remedied by setting up dependencies - Icinga at least, supports Service dependencies.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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