JMX 세션수, 세션아이디리스트 가져오기?
try {
JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:///jndi/rmi://localhost:9999/jmxrmi");
JMXConnector jmxc = JMXConnectorFactory.connect(url);
MBeanServerConnection mbsc = jmxc.getMBeanServerConnection();
ObjectName mbeanName = new ObjectName("Catalina:host=localhost,path=/,type=Manager");
Object value = mbsc.getAttribute(mbeanName, "activeSessions");
System.out.println("activeSessions = " + value);
String valueSessionIds = (String) mbsc.invoke(mbeanName, "listSessionIds", null, null);
if (valueSessionIds != null) {
StringTokenizer tokenizer = new StringTokenizer(valueSessionIds, " ");
while (tokenizer.hasMoreTokens()) {
System.out.println("tokenizer = " + tokenizer.nextToken());
}
}
jmxc.close();
} catch (Exception ex) {
ex.printStackTrace();
}
톰캣 서버에 arguments에 추가
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=9999
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false