java - Any simple way to get the queue length of an ActiveMQ? -
how obtain queue length (number of unconsumed messages sent queue) in activemq, using java?
you have use jmx, since queue interface not provide such information.
example of retrieving size of specific queue:
// connection string url = "service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi"; jmxconnector connector = jmxconnectorfactory.connect(new jmxserviceurl(url)); mbeanserverconnection connection = connector.getmbeanserverconnection(); // queue size objectname nameconsumers = new objectname("org.apache.activemq:type=broker,brokername=localhost,destinationtype=queue,destinationname=myqueue"); destinationviewmbean mbview = mbeanserverinvocationhandler.newproxyinstance(connection, nameconsumers, destinationviewmbean.class, true); long queuesize = mbview.getqueuesize();
reference: activemq jmx, required mbeans
example: managing activemq jmx apis
Comments
Post a Comment