I am wondering if the following (which works) is the correct way to get
maxHeapSize and usedMemory from a remote Geronimo server.
import org.apache.geronimo.management.stats.BoundedRangeStatisticImpl;
Map map = new HashMap();
map.put("jmx.remote.credentials", new String[] {user, password});
JMXServiceURL address = new JMXServiceURL(
"service:jmx:rmi:///jndi/rmi://"+host+ ":" + port +
"/JMXConnector");
JMXConnector jmxConnector = JMXConnectorFactory.connect(address,
map);
mbServerConnection = jmxConnector.getMBeanServerConnection();
objName = ObjectName.getInstance
("geronimo:J2EEServer=geronimo,name=JVM,j2eeType=JVM");
Stats stats = (Stats) mbServerConnection.getAttribute(objName,
"stats");
BoundedRangeStatisticImpl statistic = (BoundedRangeStatisticImpl)
stats.getStatistic("HeapSize");
long maxMemory = statistic.getUpperBound();
long usedMemory = statistic.getCurrent();
Is this ok? Or, is there a better way?
++Vamsi