java jstat

jstat 虚拟机统计信息监视工具:

  jstat (JVM Statistics Monitoring Tool) 适用于监视虚拟机各种运行状态信息的命令行工具。

命令格式:

  jstat [ option vmid [ interval [s | ms] [ count ] ] ]

  如果是本地虚拟机进程VMID 与 LVMID 是一致的, 如果是远程虚拟机进程,那VMID的格式为:

  [protocol:] [//] lvmid [@hostname[:port] / servername]

  参数interval和count代表查询间隔和次数,如果省略这两个参数,说明只查询一次,假设需要每250毫秒查询一次进程2764垃圾收集状况 ,一共20次 , 则为:

  jstat -gc 2764 250 20

jstat执行样例:

[root@egret-game-tjgdtest-ks-bj1 ~]# jstat -gcutil 15468 250 5
  S0     S1     E      O      M     CCS    YGC     YGCT    FGC    FGCT     GCT   
 99.85   0.00  58.43   8.17  97.99  95.70      4    0.042     1    0.032    0.074
 99.85   0.00  58.43   8.17  97.99  95.70      4    0.042     1    0.032    0.074
 99.85   0.00  58.43   8.17  97.99  95.70      4    0.042     1    0.032    0.074
 99.85   0.00  58.43   8.17  97.99  95.70      4    0.042     1    0.032    0.074
 99.85   0.00  58.43   8.17  97.99  95.70      4    0.042     1    0.032    0.074

结果:

字段  说明
S0、S1  表示Survivor0、 Survivor1 使用百分比
E  表示Eden使用百分比
O  表示年老代Old 使用百分比
P  表示Permanent永久代使用百分比
YGC  表示程序运行以来发生的YoungGC 次数 MinorGC
YGCT   表示YGC总耗时 ,单位为秒
FGC  表示程序运行以来发生的Full GC
FGCT  表示FGC总耗时, 单位为秒
GCT  表示所有GC总耗时, 单位为秒

jstat options 主要选项:

选项  作用
-class  监视类装载、卸载数量、总空间以及类装载所耗费的时间
-gc  监视JAVA堆状况,包括Eden区、两个Survivor区、老年代、永久代等的容量、已用空间、GC时间合计等信息
-gccapacity  监视内容与-gc基本相同,但输出主要关注Java堆各个区域使用到的最大、最小空间
-gcutil  监视内容与-gc基本相同,但输出主要关注已使用空间占总空间的百分比
-gccause  与-gcutil 功能一样,但是会额外输出导致上一次GC产生的原因
-gcnew  监视新生代GC状况
-gcnewcapacity  监视内容与-gcnew基本相同,输入主要关注使用到的最大、最小空间
-gcold  监视年老代的GC状况
-gcoldcapacity  监视内容与 -gcold基本相同,输出主要关注使用到的最大、最小空间
-gcpermacpacity  输出永久代使用到的最大、最小空间
-compiler  输出JIT编译器编译过的方法、耗时等信息
-printcompilation  输出已经被JIT编译的方法
原文地址:https://www.cnblogs.com/gouge/p/9113003.html