jstat JVM统计信息

2019-04-16 0 By admin

jstat :Monitors Java Virtual Machine (JVM) statistics.
jstat的主要作用就是对Java应用程序的资源和性能进行实时监控的命令行工具,主要包括GC情况和Heap Size资源使用情况。

一、jstat 使用方法

jstat [-option] [vmid] [interval] [count]

  1. option:-gcutil查看gc情况,-class 查看类装载情况
  2. interval:时间间隔/毫秒
  3. count:打印次数,缺省的话一直打印

常用选项说明

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

二、类加载统计

root@blogs#jstat -class 2060
Loaded Bytes Unloaded Bytes Time
15756 17355.60 0.0 11.29

  1. Loaded:加载class的数量
  2. Bytes:所占用空间大小
  3. Unloaded:未加载数量
  4. Bytes:未加载占用空间
  5. Time:时间

三、编译统计

root@blogs#jstat -compiler 2060
Compiled Failed Invalid Time FailedType FailedMethod
9142 1 0 5.01 1 org/apache/felix/resolver/ResolverImpl mergeCandidatePackages

  1. Compiled:编译数量。
  2. Failed:失败数量
  3. Invalid:不可用数量
  4. Time:时间
  5. FailedType:失败类型
  6. FailedMethod:失败的方法

四、堆内存使用情况统计

单位KB。
root@blogs# jstat -gccapacity 2316 1000
NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC
43520.0 131072.0 60416.0 7168.0 1536.0 46080.0 87552.0 262144.0 198144.0 198144.0 0.0 1124352.0 84992.0 0.0 1048576.0 10240.0 545 11

  1. NGCMN:新生代最小容量
  2. NGCMX:新生代最大容量
  3. NGC:当前新生代容量
  4. S0C:第一个幸存区大小
  5. S1C:第二个幸存区的大小
  6. EC:伊甸园区的大小
  7. OGCMN:老年代最小容量
  8. OGCMX:老年代最大容量
  9. OGC:当前老年代大小
  10. OC:当前老年代大小
  11. MCMN:最小元数据容量
  12. MCMX:最大元数据容量
  13. MC:当前元数据空间大小
  14. CCSMN:最小压缩类空间大小
  15. CCSMX:最大压缩类空间大小
  16. CCSC:当前压缩类空间大小
  17. YGC:年轻代gc次数
  18. FGC:老年代GC次数

五、统计gc垃圾回收信息

root@blogs#jstat -gcutil 7172
S0 S1 E O M CCSYGC YGCTFGCFGCT GCT
62.12 0.00 81.36 28.82 95.68 - 120.736 00.0000.736

  1. S0:年轻代中第一个survivor(幸存区)已使用的占当前容量百分比
  2. S1:年轻代中第二个survivor(幸存区)已使用的占当前容量百分比
  3. E:年轻代中Eden(伊甸园)已使用的占当前容量百分比
  4. O:old代已使用的占当前容量百分比
  5. M:元空间(MetaspaceSize)已使用的占当前容量百分比
  6. CCS:压缩使用比例
  7. YGC:从应用程序启动到采样时年轻代中gc次数
  8. YGCT:从应用程序启动到采样时年轻代中gc所用时间(s)
  9. FGC:从应用程序启动到采样时old代(全gc)gc次数
  10. FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)
  11. GCT:从应用程序启动到采样时gc用的总时间(s)