通过Jconsole和Mbeans两种方式获取Tomcat核心线程参数
首先配置jmx参数(以下配置为不用密码登录的):
-Dcom.sun.management.jmxremote.port=8004 -Dcom.sun.management.jmxremote.rmi.port=8004 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
接下来可以自主选择Jconsole来获取tomcat核心参数,其中本地进程,在本地启动tomcat后可双击选择;远程进程根据是否设置用户名和 密码来设置(比较简单、自己查下,不再赘述):
方法二:网上资料比较少,直接上代码:
// tomcat监控Mbeans
try {
final MBeanServer server = ManagementFactory.getPlatformMBeanServer();
Set<ObjectName> names = server.queryNames(new ObjectName("Tomcat:type=ThreadPool,*"), null);
if (names != null && !CollectionUtils.isEmpty(names)) {
for (final ObjectName name : names) {
System.out.print(server.getAttribute(name, "acceptCount"));
System.out.print(server.getAttribute(name, "maxConnections"));
System.out.print(server.getAttribute(name, "currentThreadCount"));
System.out.print(server.getAttribute(name, "currentThreadsBusy"));
}
}
}catch (Exception e) {
logger.error("get_tomcatMonitor_error: ", e.getMessage());
}
上一篇:
IDEA上Java项目控制台中文乱码
