Every now and then someone has a need/desire to collect and process performance and usage metrics of JMS destinations and the messaging system. Knowing that there is a buildup of messages in a particular destination over time might indicate that a downstream component is failing or the downstream external system is not available. This, in turn, may enable operational staff in the enterprise to intervene before things get out of hand. In more sophisticated solutions, knowing that a buildup of messages occurs may enable the solution to automatically bring on line additional resources, perhaps by starting additional copies of appropriate components or starting additional machines which host consumers that will take up the load.
The Java Message Queue implementation (hereafter Java MQ) has monitoring metrics collection built in and provides a convenient way of programmatic access to these metrics.
Java CAPS 5.1, Java CAPS 6, GlassFish ESB (commercially supported subset of OpenESB) and OpenESB all provide support for the Java MQ as the messaging infrastructure so solutions can be built to take advantage of this functionality.
This Note presents example projects, built using Java CAPS 6 Classic components and an example built using the Java CAPS 6/GlassFish ESB JMS JCA Adapter, which receive and “process” Java MQ metrics. How you can take advantage of this capability in your enterprise solutions is up to you and your creativity.