一、jstat:查看帮助或选项

1、查看帮助

命令行:

jstat --help 
Usage: jstat --help|-options 
jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]] 
...

2、查看可用的选项

命令行:jstat -options
-class
-compiler
-gc
-gccapacity
-gccause
-gcmetacapacity
-gcnew
-gcnewcapacity
-gcold
-gcoldcapacity
-gcutil
-printcompilation

二、jstat查看gc的常用命令

1、找一个java进程

命令行:jps
24723 Jps
20756 storeback-0.0.1-SNAPSHOT.jar

2、gc: 打印gc的信息

命令行:jstat -gc 20756

S0C

S1C

S0U

S1U

EC

EU

OC

OU

MC

MU

CCSC

CCSU

YGC

YGCT

FGC

FGCT

CGC

CGCT

GCT

0

6144

0

4712.7

73728

0

57344

34393.5

61132

59888.7

7372

6980.1

19

0.172

0

0

6

0.019

0.191

说明

关键字

说明

S0C

 survivor 0区域的容量,以KB为单位

S1C

 survivor 1区域的容量,以KB为单位

S0U

 survivor 0区域的使用大小,以KB为单位

S1U

 survivor 1区域的使用大小,以KB为单位

EC

 Eden区域的容量,以KB为单位

EU

 Eden区域的使用,以KB为单位

MC

 Metaspace元数据区的 Committed Size,以KB为单位

MU

 Metaspace元数据区的使用大小,以KB为单位

CCSC

 Compressed class的Committed Size,以KB为单位

CCSU

 Compressed class的使用大小,以KB为单位

OC

 old区域的容量,以KB为单位

OU

 old区域的使用,以KB为单位

YGC

 young generation(年轻代)的GC次数

YGCT

 young generation(年轻代)的GC消耗时间

FGC

 full GC的次数

FGCT

 full GC的消耗时间

CGC

 并发GC次数(G1 gc)

CGCT

 并发GC的消耗时间(G1 gc)

GCT

 GC总消耗时间

3、gccause:显示最近一次gc的原因

命令行:jstat -gccause 20756

S0

S1

E

O

M

CCS

YGC

YGCT

FGC

FGCT

CGC

CGCT

GCT

LGCC

GCC

0

76.7

52.78

59.98

97.97

94.68

19

0.172

0

0

6

0.019

0.191

G1 Evacuation Pause

No GC

说明

关键字

说明

S0

 survivor 0区域的使用比例

S1

 survivor 1区域的使用比例

E

 Eden区域的使用比例

O

 Old区域的使用比例

M

 元数据区域的使用比例

CCS

 Compressed class空间的使用比例

YGC

 young generation(年轻代)的GC次数

YGCT

 young generation(年轻代)的GC消耗时间

FGC

 full GC的次数

FGCT

 full GC的消耗时间

CGC

 并发GC次数(G1 gc)

CGCT

 并发GC的消耗时间(G1 gc)

GCT

 GC总消耗时间

LGCC

 上次GC的原因

GCC

 当前GC的原因

4、gcutil: 统计GC总体的情况

命令行:jstat -gcutil 20756

S0

S1

E

O

M

CCS

YGC

YGCT

FGC

FGCT

CGC

CGCT

GCT

0

76.7

58.33

59.98

97.97

94.68

19

0.172

0

0

6

0.019

0.191

说明:与gccause相同,只是减少了LGCC/GCC 两个字段

5、gcnew:新生代的统计信息

命令行:jstat -gcnew 20756

S0C

S1C

S0U

S1U

TT

MTT

DSS

EC

EU

YGC

YGCT

0

6144

0

4712.7

15

15

5120

73728

57344

19

0.172

关键字

说明

S0C

 survivor 0区域的容量

S1C

 survivor 1区域的容量

S0U

 survivor 0区域的使用大小,以KB为单位

S1U

 survivor 1区域的使用大小,以KB为单位

TT

 Tenuring threshold(新生代晋升到老年代的阀值)

MTT

 最大的Tenuring threshold

DSS

 所需的survivor区大小

EC

 Eden区域的容量

EU

 Eden区域的使用,以KB为单位

YGC

 young generation(年轻代)GC次数

YGCT

 young generation(年轻代)GC所需的时

6、gcold:统计old代的信息

命令行:jstat -gcold 20756

MC

MU

CCSC

CCSU

OC

OU

YGC

FGC

FGCT

CGC

CGCT

GCT

61132

59888.7

7372

6980.1

57344

34393.5

19

0

0

6

0.019

0.191

关键字

说明

MC

 Metaspace元数据区的 Committed Size,以KB为单位

MU

 Metaspace元数据区的使用大小,以KB为单位

CCSC

 Compressed class的Committed Size,以KB为单位

CCSU

 Compressed class的使用大小,以KB为单位

OC

 old区域的容量,以KB为单位

OU

 old区域的使用,以KB为单位

YGC

 young generation(年轻代)的GC次数

FGC

 full GC的次数

FGCT

 full GC的时间

CGC

 并发GC次数(G1 gc)

CGCT

 并发GC的消耗时间(G1 gc)

GCT

 总的GC时间

7、gccapacity:统计内存池的创建和大小等统计信息

命令行:jstat -gccapacity 20756

NGCMN

NGCMX

NGC

S0C

S1C

EC

OGCMN

OGCMX

OGC

OC

MCMN

MCMX

MC

CCSMN

CCSMX

CCSC

YGC

FGC

CGC

0

3932160

79872

0

6144

73728

0

3932160

57344

57344

0

1103872

61132

0

1048576

7372

19

0

6

关键字

说明

NGCMN

 最小的新生代的大小

NGCMX

 最大的新生代大小

NGC

 目前新生代的大小

S0C

 survivor 0区域的容量

S1C

 survivor 1区域的容量

EC

 Eden区域的容量

OGCMN

 最小old代大小

OGCMX

 最大old代大小

OGC

 目前old代大小

OC

 目前old space大小

MCMN

 最小metaspace大小

MCMX

 最大metaspace大小

MC

 Metaspace元数据区的 Committed Size

CCSMN

 Compressed class空间的最小容量

CCSMX

 Compressed class空间的最大容量

CCSC

 Compressed class的Committed Size

YGC

 young generation的GC次数

FGC

 full GC的次数

CGC

 并发GC次数(G1 gc)

8、gcnewcapacity:统计新生代各个区的大小信息

命令行:jstat -gcnewcapacity 20756

NGCMN

NGCMX

NGC

S0CMX

S0C

S1CMX

S1C

ECMX

EC

YGC

FGC

CGC

0

3932160

79872

0

0

3932160

6144

3932160

73728

19

0

6

关键字

说明

NGCMN

 最小的新生代的大小

NGCMX

 最大的新生代大小

NGC

 目前新生代的大小

S0CMX

 survivor 0区域容量的最大值

S0C

 survivor 0区域的容量

S1CMX

 survivor 1区域容量的最大值

S1C

 survivor 1区域的容量

ECMX

 Eden区域容量的最大值

EC

 Eden区域的容量

YGC

 young generation的GC次数

FGC

 full GC的次数

CGC

 并发GC次数(G1 gc)

9、gcoldcapacity:统计old代各个区的大小信息

命令行:jstat -gcoldcapacity 20756

OGCMN

OGCMX

OGC

OC

YGC

FGC

FGCT

CGC

CGCT

GCT

0

3932160

57344

57344

19

0

0

6

0.019

0.191

关键字

说明

OGCMN

 最小old代大小

OGCMX

 最大old代大小

OGC

 目前old代大小

OC

 目前old space大小

YGC

 young generation的GC次数

YGCT

 young generation的GC时间

FGC

 full GC的次数

FGCT

 full GC的时间

CGC

 并发GC次数(G1 gc)

CGCT

 并发GC耗时 (G1 gc)

GCT

 总的GC时间

10、gcmetacapacity:统计元数据区域的容量信息

命令行:jstat -gcmetacapacity 20756

MCMN

MCMX

MC

CCSMN

CCSMX

CCSC

YGC

FGC

FGCT

CGC

CGCT

GCT

0

1103872

61132

0

1048576

7372

19

0

0

6

0.019

0.191

关键字

说明

MCMN

 最小metaspace大小

MCMX

 最大metaspace大小

MC

 Metaspace元数据区的 Committed Size

CCSMN

 Compressed class空间的最小容量

CCSMX

 Compressed class空间的最大容量

CCSC

 Compressed class的Committed Size

YGC

 young generation的GC次数

FGC

 full GC的次数

FGCT

 full GC的时间

CGC

 并发GC次数(G1 gc)

CGCT

 并发GC耗时 (G1 gc)

GCT

 总的GC时间