VisualVM使用jstatd远程监控
<1> 首先需要准备一个java.policy文件,保存到如/root/jstatd.java.policy,文件具体内容:
grant codebase "file:${java.home}/../lib/tools.jar" {
permission java.security.AllPermission;
};
<2> 启动jstatd
jstatd -J-Djava.security.policy=/root/jstatd.java.policy -J-Djava.rmi.server.logCalls=true
<3> 在VisualVM中增加远程配置
这个步骤比较简单,若没成功可参考官方文档:
https://visualvm.github.io/gettingstarted.html?VisualVM_1.3.9
<4> 可能存在问题
实际用VisualVM连接的时候,并没有获取到数据,这时候可以用hostname -i查看一下是否是127.0.0.1 ,若是,则可以增加参数指定当前机器IP(上网查好多都是要修改/etc/hosts文件,个人觉得能不改就解决问题更好),例如:
jstatd -J-Djava.security.policy=/root/jstatd.java.policy -J-Djava.rmi.server.logCalls=true -J-Djava.rmi.server.hostname=192.168.50.88
参考文档:http://docs.oracle.com/javase/6/docs/technotes/tools/share/jstatd.html