利用VisualVm远程监控Java进程

本着在win上监控远程多台liunx 系统中的 java进程想法,做的一系列配置

 

要实现远程监控Java进程,必须在远程主机(运行Java程序的主机)上跑一个jstatd进程,这个进程相当于一个agent,用来收集远程主机上的JVM运行情况,然后用VisualVm连接到这个jstatd,从而实现远程监控的目的

 

第一步,在远程服务器上 的java的安装目录的bin目录下 创建文件 tools.policy

vim tools.policy 去编辑这个文件

输入 :

 

grant codebase "file:/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64/lib/tools.jar" {

permission java.security.AllPermission;

};

 

需要把jdk的路劲替换成 安装的目录或者使用环境变量JAVA_HOME

 

 

第二步:执行命令

 

./jstatd -J-Djava.security.policy=./tools.policy -p1099 -J-Djava.rmi.server.hostname=192.168.**.**

 

 

额,执行完后,会想卡住一样,没有任何输出,

 

 

第三步

 

可以用 java安装目录下的bin目录下的jvisualvm.exe 来远程连接了,

 

打开后点击添加远程

利用VisualVm远程监控Java进程_第1张图片

 

然后就可以像本地一样查看远程的jvm信息了,注意,jdk版本要一致,不然会出现查看不了的情况

你可能感兴趣的:(java)