Through the JMX service there are an extensive number of mbeans available to determine the state of the broker and its queues and topics:
http://activemq.apache.org/jmx.html It possible to access the JMX MBeans over HTTP, and of course you can use tools that make direct use of the JMX service. For example there are JMX aware nagios monitors you can use to monitor the mbean attribute values: https://exchange.nagios.org/directory/Plugins/Java-Applications-and-Servers/check_jmx/details For more complicated decision making you might also consider writing something in Groovy, and interacting with the JMX api through it. I haven't done it, but it looks pretty straight forward: http://www.andrejkoelewijn.com/blog/2011/03/18/listing-activemq-queues-with-jmx-and-groovy/ And there are also ganglia monitors available, though I've never used them so I can't say how well they work: https://github.com/jbuchbinder/ganglia-activemq Jim