在项目中发现有很多虚拟机的调试监控跟踪工具。
有jdk自带的也有其他厂商的,google一把发现jrockit自带的工具非常强大,
因为我主要是使用sun jdk所以优先研究sun jdk的一些工具,发现已经足够强大了。
这里主要介绍jconsole,力求做到简明扼要,对大家有点用。希望以后同道中人google一下,找到这篇文章对大家有所帮助。
当前我使用的版本是jdk 1.6。
sun的原版文档:http://java.sun.com/developer/technicalArticles/J2SE/jconsole.html
jconsole 故名思议是虚拟机的控制台,在windows双击就可以启动。
可以方便形象的查看正在运行的虚拟机的一些信息。包括线程,内存一起其他的jmx暴露出来的信息和接口。
配置问题:
windows下连接本机虚拟机:
可以通过pid连接,但是如果不是ntfs文件系统可能会有问题。
windows下连接linux服务器上的虚拟机:
通过jmxrmi方式连接:
第一步
注意:
如果:
[tdwiki@installed-host-eth0 ~]$ hostname -i
127.0.0.1
这样会有问题的,需要修改hosts文件使显示正确的ip
第二步
连接方式,在虚拟机启动是加入下列参数
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=7089
-Dcom.sun.management.jmxremote
如果想加上密码验证,请再加上如下参数
-Dcom.sun.management.jmxremote.password.file=/home/tdwiki/test/jmxremote.password
-Dcom.sun.management.jmxremote.access.file=/home/tdwiki/test/jmxremote.access
第三步
通过如下连接字符串,连接服务器
service:jmx:rmi:///jndi/rmi://10.1.1.101:7089/jmxrmi
其他功能:
如果需要暴露自己定制的信息,只需要实现一个MBean,然后注册到ManagementFactory.getPlatformMBeanServer(),就可以在jconsole里看了
jconsole使用介绍
最新推荐文章于 2024-01-30 16:21:28 发布