[jboss-cvs] JBoss Messaging SVN: r7713 - trunk/examples/soak/reconnect/src/org/jboss/jms/soak/example/reconnect.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Aug 12 08:20:34 EDT 2009
Author: jmesnil
Date: 2009-08-12 08:20:34 -0400 (Wed, 12 Aug 2009)
New Revision: 7713
Modified:
trunk/examples/soak/reconnect/src/org/jboss/jms/soak/example/reconnect/ServerDump.java
Log:
added JMS queue infos when dumping the server
Modified: trunk/examples/soak/reconnect/src/org/jboss/jms/soak/example/reconnect/ServerDump.java
===================================================================
--- trunk/examples/soak/reconnect/src/org/jboss/jms/soak/example/reconnect/ServerDump.java 2009-08-12 09:59:15 UTC (rev 7712)
+++ trunk/examples/soak/reconnect/src/org/jboss/jms/soak/example/reconnect/ServerDump.java 2009-08-12 12:20:34 UTC (rev 7713)
@@ -27,14 +27,19 @@
import java.lang.management.MemoryUsage;
import java.lang.management.ThreadMXBean;
import java.util.Date;
+import java.util.Iterator;
+import java.util.Set;
import java.util.Timer;
import java.util.TimerTask;
import java.util.logging.Logger;
import javax.management.MBeanServerInvocationHandler;
+import javax.management.MalformedObjectNameException;
+import javax.management.ObjectName;
import org.jboss.messaging.core.management.MessagingServerControl;
import org.jboss.messaging.core.management.ObjectNames;
+import org.jboss.messaging.jms.server.management.JMSQueueControl;
/**
* A MemoryDump
@@ -80,17 +85,18 @@
ObjectNames.getMessagingServerObjectName(),
MessagingServerControl.class,
false);
- String info = "\n**** Server Dump ****\n";
+ String info = "\n**** Server Dump ****\n";
info += String.format("date: %s\n", new Date());
info += String.format("heap memory: used=%s, max=%s\n",
- sizeof(heapMemory.getUsed()),
- sizeof(heapMemory.getMax()));
+ sizeof(heapMemory.getUsed()),
+ sizeof(heapMemory.getMax()));
info += String.format("non-heap memory: used=%s, max=%s\n",
- sizeof(nonHeapMemory.getUsed()),
- sizeof(nonHeapMemory.getMax()));
+ sizeof(nonHeapMemory.getUsed()),
+ sizeof(nonHeapMemory.getMax()));
info += String.format("# of thread: %d\n", threadMXBean.getThreadCount());
info += String.format("# of conns: %d\n", messagingServer.getConnectionCount());
- info += "********************\n";
+ info += appendQueuesInfo();
+ info += "********************\n";
log.info(info);
}
catch (Exception e)
@@ -98,6 +104,30 @@
e.printStackTrace();
}
}
+
+ private String appendQueuesInfo() throws Exception
+ {
+ String info = "JMS queues:\n";
+
+ ObjectName query = ObjectName.getInstance("org.jboss.messaging:module=JMS,type=Queue,*");
+ Set names = ManagementFactory.getPlatformMBeanServer().queryNames(query, null);
+ for (Iterator iterator = names.iterator(); iterator.hasNext();)
+ {
+ ObjectName on = (ObjectName)iterator.next();
+ JMSQueueControl queue = (JMSQueueControl)MBeanServerInvocationHandler.newProxyInstance(ManagementFactory.getPlatformMBeanServer(),
+ on,
+ JMSQueueControl.class,
+ false);
+ info += String.format("\t%s: delivering %s msgs to %s consumers (%s msgs in memory, %s added)\n",
+ queue.getName(),
+ queue.getDeliveringCount(),
+ queue.getConsumerCount(),
+ queue.getMessageCount(),
+ queue.getMessagesAdded());
+ }
+
+ return info;
+ }
};
}
More information about the jboss-cvs-commits
mailing list