作者:聂勇 欢迎转载,请保留作者信息并说明文章来源!
环境
- Windows XP / Linux
- JDK5Update15
- Tomcat5.5.26
- Resin 3.1.6
Jconsole简介
jconsole是一个JMX兼容的监视工具。它使用Java虚拟机的JMX机制来提供运行在Java平台的应用程序的性能与资源耗费信息。 位于JAVA_HOME/bin目录。
一、本地监控
命令语法:
示例:
如何获取进程ID
- Windows上在任务管理器中查看。
- UNIX上用ps查看。
- 使用jps命令查看JVM的进程ID,请参考jps - Java Virtual Machine Process Status Tool。
jconsole和被监视的应用程序必须是使用同一个用户运行的,管理和监视系统使用操作系统的文件权限。在Windows操作系统如果要支持远程监控还需要磁盘格式为NTFS。
如果你没有指定PID,直接运行jconsole,jconsole会自动的探测出本地运行的所有java应用程序并显示一个对话框让你选择你想监控的程序。如下图所示:
使用jconsole监控本地应用的详细说明和使用可以参考官方文档Local JMX Monitoring and Management。
二、远程监控
命令语法:
示例:
可以直接在CMD中直接输入jconsole,然后在“JConcole:连接到代理”对话框中选择“远程”选项,输入主机和端口,如何设置用户名和密码,则还要输入用户名和密码,如下图所示:
使用jconsole监控远程应用的详细说明和使用可以参考官方文档Remote Monitoring and Management。
三、配置Resin3.0.x接受JMX管理
在启动resin时加参数:
windows下
Linux下
四、配置Resin3.1.x接受JMX管理
以下配置在Windows和Linux下同时适用,打开conf/resin.conf 中的JMX配置信息如下:
无限制访问
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9009 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false
需要用户名和密码访问
-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9009 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.access.file=D:/temp/jmxremote.access -Dcom.sun.management.jmxremote.password.file=D:/temp/jmxremote.password
打开jconsole,用本地或远程方式进入,在MBean选项中将看到resin的MBean,如下界面所示:
五、配置Tomcat接受JMX管理
打开Tomcat的bin/catalina.bat,如果为linux或unix系统,则为catalina.sh文件。
找到
修改为:
无限制访问
在”rem —————————————————————————“下面添加一行:1set JAVA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false需要用户名和密码访问
在”rem —————————————————————————“下面添加一行:1set JAVA_OPTS=-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9008 -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.password.file=D:/temp/jmxremote.password -Dcom.sun.management.jmxremote.access.file=D:/temp/jmxremote.access
打开jconsole,用本地或远程方式进入,在MBean选项中将看到Tomcat的MBean,如下界面所示: