// 基本格式:
jstat -<option> <vmid> [<interval> [<count>]]
监控vm的option信息,间隔时间为interval毫秒, 查询次数为count,
//option则 有以下几种:
-class // 类装载,卸载数量,总空间及类装载所耗时间
jstat -class 312 2000 10
Loaded Bytes Unloaded Bytes Time
13490 29414.4 36 56.7 36.80
13490 29414.4 36 56.7 36.80
13490 29414.4 36 56.7 36.80
13499 29430.2 36 56.7 36.82
13499 29430.2 36 56.7 36.82
13499 29430.2 36 56.7 36.82
13499 29430.2 36 56.7 36.82
13499 29430.2 36 56.7 36.82
13499 29430.2 36 56.7 36.82
13499 29430.2 36 56.7 36.82
-compiler // JIT编译过的方法及耗时时间
jstat -compiler 312
Compiled Failed Invalid Time FailedType FailedMethod
1785 0 0 20.50 0
-gc //监控java堆状况, 年轻代(Eden + S0 + S1) + 老年代 + 永久代 + 已用空间 + GC时间等
jstat -gc 312 // C: 容量; U:使用的;E:Eden;O:老年代;P:永久代;YGC:年轻代GC次数;YGCT:年轻代GC时间;FGC:FullGC次数;FGCT:FullGC时间;GCT: GC总时间
S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT
1024.0 1024.0 0.0 0.0 75776.0 1883.2 66048.0 50115.7 82944.0 82835.4 137 0.866 111 20.107 20.973
-gcutil // 同-gc,但显示已使用的空间百分比
jstat -gcutil 312
S0 S1 E O P YGC YGCT FGC FGCT GCT
0.00 0.00 2.49 75.88 99.87 137 0.866 111 20.107 20.973
-gccapacity //与-gc相同,但显示各个堆区使用的最大和最小空间
-gccause //与-gcutil相同,但会输出上一次GC产生的原因
-gcnew //监控年轻代GC状况
-gcnewcapacity //与-gcnew相同, 但会输出使用到的最大和最小空间
-gcold //监控老年代GC状况
-gcoldcapacity //与-gcold, 但会输出使用到的最大和最小空间
-gcpermcapacity //输出永久代使用到的最大和最小空间
-printcompilation //输出已经被JIT编译的方法
收工。