JVisualVM 监控 Linux---Jstatd 方式,GC插件不支持此JVM的问题
Jstatd 监控方式,缺陷:没有 cpu 监控画面
搭建jstatd环境时,遇到jstatd连接不上,GC不支持此JVM的问题,如下图:
JVisualVM 监控 Linux---Jstatd 方式环境搭建:
1.windows监控机需要安装jdk1.8,在jdk安装目录的bin目录下双击 jvisualvm.exe ,工具-插件-可用插件-visual GC-安装
2.linux服务器先开启防火墙
命令:systemctl start firewalld
3.防火墙开启 10003 等端口,指令如下:按照顺序执行即可
systemctl start firewalld ##开启防火墙
firewall-cmd --add-port=10001/tcp --permanent ##永久添加 10001 端口
firewall-cmd --add-port=10002/tcp --permanent ##永久添加 10002 端口
firewall-cmd --add-port=10003/tcp --permanent ##永久添加 10003 端口,jstatd要用到的端口
firewall-cmd --add-port=1099/tcp --permanent ##永久添加 1099 端口,这是jstatd的默认端口
firewall-cmd --list-ports ##列出开放的端口
4.关闭防火墙
命令:systemctl stop firewalld
5.启动被测应用的服务
6.切到jdk目录/bin
7.修改hosts文件,依次执行下列操作
- 输入命令:vi /etc/hosts
- 按键盘“i”键,进入编辑模式
- 将第一个127.0.0.1改为当前linux服务器的ip
- 按esc键退出
- 输入:wq 保存并退出
8.启动jstatd,还是在当前jdk的bin目录下,输入以下命令:
./jstatd -J-Djava.security.policy=all.policy -p 10003 -J-Djava.rmi.server.logCalls=true -J-Djava.rmi.server.hostname=192.168.2.109(虚拟机本地ip)
9.windows监控机上回到jvisualvm界面,增加远程服务器
10.右键添加jstatd连接,端口号10003,连接成功,GC也能监控到相关的数据了