背景:你的服务器装好了jdk环境,需要jdk1.5以上
1、下载jvmstat-3_0.zip。下载地址:http://www.oracle.com/technetwork/java/jvmstat-142257.html
2、解压到本地路径,比如我解压的路径是:E:\jvmstat-3_0\jvmstat
3、设置环境变量
计算机--属性--高级系统设置--高级---环境变量


在环境变量path后面添加:
;%JVMSTAT_HOME%\bat;%JVMSTAT_HOME%\bin

4、监控本地的一个java进程
控制台中输入命令: visualgc 进程pid
E:\jvmstat-3_0\jvmstat\bat>visualgc.cmd 19888
5、远程服务器操作(windows和linux的操作是一样的,这里只给出Linux的完整示例):
远程监控linux的java进程这里需要用到jstatd工具( jstat 的 daemon 程序,利用 RMI 进行远程监控)。
一般来说呢,这里是会出现问题的,那就是 permission 的问题了,Sun 的网站上给了相关的解决方法,方法如下
vim $JAVA_HOME/jre/lib/security/java.policy,打开该文件中添加下面的代码:
grant codebase"file:${java.home}/../lib/tools.jar" {
permissionjava.security.AllPermission;
};
在被监控的主机上部署运行jstatd,命令如下,让这个命令放后台运行,或者一直放控制台运行:
./jstatd -J-Djava.rmi.server.hostname=103.235.168.56 -J-Djava.security.policy=all.policy //ip地址为linux远程服务器的ip
6、本地服务器远程被监控linux主机,此时被监控主机的1099端口是需要开放的,能连接的(防火墙设置)
E:\jvmstat-3_0\jvmstat\bat>visualgc.cmd 被监控主机的进程pid@被监控主机的ip

然后就监控完成啦,监控效果如下:

参考了这位小哥的博客哦:
https://blog.youkuaiyun.com/yydcj/article/details/8544291
JVM性能监控实践
本文详细介绍了如何使用jvmstat工具进行本地及远程Java进程的性能监控,包括环境配置、命令行操作步骤,并解决了权限问题。
3036

被折叠的 条评论
为什么被折叠?



