格式:
jstat [ generalOption | outputOptions vmid [interval[s|ms] [count]] ]
参数:
-class 查看加载、卸载数量、总空间及类状态所耗费的时间 -gc 查看Java堆状况,包括年轻代(Eden、2个Survivor)、老年代、垃圾收集次数、收集耗时等信息 -gccapacity 与-gc类似,额外输出主要关注的Java堆各个区域最大、最小空间 -gcutil 查看已使用空间占总空间的百分比等信息 -gccause 与-gcutil类似,会额外输出导致上一次产生GC的原因 -gcnew 查看新生代垃圾收集状况 -gcnewcapacity 查看内容与-gcnew类似,输出主要关注的新生代最大、最小空间 -gcold 查看老年代收集状况 -gcoldcapacity 与-gcold类似,输出主要关注的老年代最大、最小空间 -compiler 查看即时编译过的方法、耗时等信息 -printcompilation 输出已经被即时编译过的方法
输出的属性说明(部分):
#类加载统计 jstat -class pid Loaded 加载class的数量 Bytes 所占用空间大小 Unloaded 未加载数量 Bytes 未加载占用空间 Time 时间
#编译统计 jstat -compiler pid Compiled 编译数量 Invalid 不可用数量 Time 时间 FailedType 失败类型 FailedMethod 失败的方法
#垃圾回收统计 jstat -gc pid S0C 第一个幸存区的大小 S1C 第二个幸存区的大小 S0U 第一个幸存区的使用大小 S1U 第二个幸存区的使用大小 EC 伊甸园区的大小 EU 伊甸园区的使用大小 OC 老年代大小 OU 老年代使用大小 MC 方法区大小 MU 方法区使用大小 CCSC 压缩类空间大小 CCSU 压缩类空间使用大小 YGC 年轻代垃圾回收次数 YGCT 年轻代垃圾回收消耗时间 FGC 老年代垃圾回收次数 FGCT 老年代垃圾回收消耗时间 GCT 垃圾回收消耗总时间
#堆内存统计 jstat -gccapacity pid NGCMN 新生代最小容量 NGCMX 新生代最大容量 NGC 当前新生代容量 S0C 第一个幸存区大小 S1C 第二个幸存区的大小 EC 伊甸园区的大小 OGCMN 老年代最小容量 OGCMX 老年代最大容量 OGC 当前老年代大小 OC 当前老年代大小 MCMN 最小元数据容量 MCMX 最大元数据容量 MC 当前元数据空间大小 CCSMN 最小压缩类空间大小 CCSMX 最大压缩类空间大小 CCSC 当前压缩类空间大小 YGC 年轻代gc次数 FGC 老年代GC次数