java虚拟机10.jvm监控与故障处理工具

  • 1. jps 虚拟机进程状况工具(JVM Process Status Tool)

功能与unix的ps类似:可以列出正在运行的虚拟机进程,并显示虚拟机执行主类名称,以及这些进程的本地虚拟机实例的唯一ID。

jps命令格式:

        jps [options] [hostid]
Options:
  • -q   只输出LVMID,省略主类的名称;
  • -m  输出虚拟机进程启动时传递给主类Main()函数的参数;
  • -l    输出主类的全名,如果进程执行的是jar包,输出jar路径;
  • -v   输出虚拟机进程启动时JVM参数;

jps可以通过RMI协议查询开启了RMI服务的远程虚拟机进程状态,hostid为RMI注册表中注册的主机名。

 jps 192.168.8.7  //查看远程计算机192.168.8.7的情况(默认1099端口)

jps rmi://192.168.8.7:8888   //查看远程计算机192.168.8.7 8888端口 
 
  • 2. jstat 拟机统计信息监视工具(JVM Statistics Monitoring Tool)

监视虚拟机各种运行状态信息,可以显示本地或远程虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据。

jstat命令格式:

        jstat [option vmid [ interval [s|ms] [count] ] ]
Options:
  • -class    监视类装载、卸载数量、总空间及类装载所耗费的时间;
  • -gc    监视Java堆状态,包括Eden区(E)、2个Survivor区(S0,S1)、老年代(O)、永久代(P)等的容量、已用空间、GC时间合计等信息;
  • -gccapacity    监视内容与-gc基本相同,但输出主要关注Java堆各个区域使用到的最大和最小空间;
  • -gcutil     监视内容与-gc基本相同,但输出主要关注已使用空间占总空间的百分比;
  • -gccause    与-gcutil功能一样,但是会额外输出导致上一次gc产生的原因;
  • -gcnew    监视新生代gc的状况;
  • -gcnewcapacity    监视内容与-gcnew基本相同,输出主要关注使用到的最大和最小空间;
  • -gcold    监视老年代gc的状况;
  • -gcoldcapacity    监视内容与-gcold基本相同,输出主要关注使用到的最大和最小空间;
  • -gcpermcapacity    输出永久代使用到的最大和最小空间;
  • -compiler    输出JIT编译器编译过的方法、耗时等信息;
  • -printcompilation    输出已经被JIT编译的方法;

猜你喜欢

转载自www.cnblogs.com/shanhm1991/p/9919685.html