As a Tomcat administrator, you are likely to be completely comfortable when working with XML configuration files, examining detailed logs, and interacting with management applications such as the Tomcat Manager application. Logs provide debug traces when configuration mistakes are made, or when a system exception occurs. The Manager application enables remote start, stop, installation, and removal of applications. It also provides visibility into some information on the running applications. By and large, however, while a Tomcat server is up and running, there is very little you can do to ascertain the current state-of-health of Web applications and the Tomcat server. This is not really limited to the Tomcat server; there really is a lack of monitoring and management facilities for servers created on the Java platform — that is, until Java SE 5!
Starting in Java SE 5, and improved in Java SE 6, are the features known as Monitoring and Management (M and M). The M and M platform and tools support enable applications to be monitored and managed in real time — while they are running — either locally on the same machine or remotely over a network. The enabling technology is actually called Java Management Extension (JMX). Support for JMX is built extensively into the Tomcat server since version 4, and is relatively mature in Tomcat 6. This chapter discusses the following topics:
JMX and manageability requirements
Introduction to JMX