【参考文章】:【Linux运维入门】Jstatd方式远程监控Linux下 JVM运行情况
1. jps简介
显示系统内所有的HotSpot虚拟机进程。
且只能查看当前用户下的Java进程信息;
2. 基本用法
2.1 jps
jps 命令等同于 jps -V
输出Java进程的PID和主类名信息;
示例 :
2.2 jps -l
输出Java进程的PID和主类完整包路径信息;
示例 :
2.3 jps -m
输出Java进程的PID、主类名信息和主方法的参数信息;
示例:
2.4 jps -v
输出Java进程的PID、包名信息和完整的JVM参数;
示例:
2.5 jps -q
仅显示Java进程的PID;
示例:
3. 使用 jps 监控远程服务器的Java进程
若要监控远程服务器上的 Java进程,则远程服务器必须启动 jstatd 服务;
3.1 policy文件
创建一个扩展名为policy的文件,比如:jstatd.policy
文件内容如下:
grant codebase "file:${java.home}/../lib/tools.jar" { permission java.security.AllPermission; };
3.2 启动 jstatd
jstatd -J-Djava.security.policy=/root/jstatd.policy -J-Djava.rmi.server.hostname=192.168.145.132
/root/jstatd.policy :policy文件的绝对路径
192.168.145.132 :远程服务器的IP
当前用户必须有该文件的权限,且只能远程监控执行 jstatd 的用户下的Java进程。