本文出处 Jstat 命令详解 转载请阐明出处
jstat 是 JDK 自带的一个轻量级小工具。全称“Java Virtual Machine statistics monitoring tool”,次要利用 JVM 内建的指令对 Java 应用程序的资源和性能进行实时的命令行的监控,包含了对 Heap size 和垃圾回收情况的监控。
上面展现常用命令
jstat –class<pid> : 显示加载 class 的数量,及所占空间等信息。
能够列出以后 JVM 版本反对的选项,常见的有
- -class 类加载器
显示列名 | 具体形容 |
---|---|
Loaded | 装载的类的数量 |
Bytes | 装载的字节数 |
Unloaded | 卸载的类的数量 |
Bytes | 卸载的类数量 |
Time | 装载和卸载的应用工夫 |
例子如下
jstat -class 86517
Loaded Bytes Unloaded Bytes Time
18051 32345.3 0 0.0 112.14
jstat -compiler pid 显示 VM 实时编译的数量等信息。
显示列名 | 具体形容 |
---|---|
Compiled | 编译工作执行数量 |
Failed | 编译工作执行谬误的数量 |
Invalid | 编译工作执行生效的数量 |
Time | 编译工作执行的工夫 |
FailedType | 编译工作最初一个执行的类型 |
FailedMethod | 最初一个编译失败工作所在的类及办法 |
例子如下
jstat -compiler 86517
Compiled Failed Invalid Time FailedType FailedMethod
23183 9 0 459.21 1
jstat -gc <pid>: 能够显示 gc 的信息,查看 gc 的次数,及工夫。
列名 | 形容 |
---|---|
S0C | 幸存区 Survior1 S0 空间容量 (kb) |
S1C | 幸存区 Survior S1 空间容量(kb) |
S0U | 幸存区 Survior1 S0 应用空间(kb) |
S1U | 幸存区 Survior S1 应用空间(kb) |
EC | Eden 区空间容量(kb) |
EU | Eden 区应用空间(kb) |
OC | 老年代 Old 空间容量(kb) |
OU | 老年代 Old(kb) |
MC | 元空间 MetaSpace 空间容量(kb) |
MU | 元空间 MetaSpace 应用空间(kb) |
CCSC | 压缩类空间容量(kb) |
CCSU | 压缩类应用空间(kb) |
YGC | 年老代 gc 回收数量 |
YGCT | 年老代 gc 收集工夫 |
FGC | full gc 执行数量 |
FGCT | full gc 执行总工夫 |
GCT | 总垃圾回收工夫 |
例子如下
jstat -gc 86517
S0C S1C S0U S1U EC EU OC OU MC MU CCSC CCSU YGC YGCT FGC FGCT GCT
66560.0 66560.0 0.0 7215.7 532480.0 89819.8 1431552.0 1291011.4 108752.0 101631.2 15004.0 11994.8 10491 163.755 0 0.000 163.755
jstat -gccapacity pid 查看内存中堆的分代内存大小
列名 | 形容 |
---|---|
NGCMN | Young 年老代最小的新一代容量(kB) |
NGCMX | Young 年老代最大新一代容量(kB) |
NGC | Young 年老代 以后容量(kB) |
S0C | 幸存区 Survior S0 空间容量 (kB) |
S1C | 幸存区 Survior S1 空间容量 (kB) |
EC | Eden 区空间容量(kB) |
OGCMN | Old 老年代最小的新一代容量(kB) |
OGCMX | Old 老年代最大新一代容量(kB) |
OGC | 以后 Old 老年代容量(kB) |
OC | 以后旧的 Old 老年代容量(kB) |
MCMN | 最小 Metaspace 元空间容量(kB) |
MCMX | 最大 Metaspace 元空间容量(kB) |
MC | Metaspace 元空间容量(kB) |
CCSMN | 压缩类最小空间(kB) |
CCSMX | 压缩类最大空间(kB) |
CCSC | 压缩类的空间(kB) |
YGC | 年老代 GC 事件的数量 |
FGC | Full GC 事件的数量 |
例子如下:
jstat -gccapacity 86517
NGCMN NGCMX NGC S0C S1C EC OGCMN OGCMX OGC OC MCMN MCMX MC CCSMX CCSC YGC FGC
0.0 665600.0 665600.0 66560.0 66560.0 532480.0 0.0 1431552.0 1431552.0 1431552.0 0.0 1138688.0 104144.0 0.0 1048576.0 14492.0 350 0
-gccause <pid> 显示无关垃圾收集统计信息的摘要
列名 | 形容 |
---|---|
S0 | 幸存区 Survior S0 利用率占空间以后容量的百分比 |
S1 | 幸存区 Survior S1 利用率占空间以后容量的百分比 |
E | Eden 区利用率占空间以后容量的百分比 |
O | Old 老年代利用率占空间以后容量的百分比 |
M | Metaspace 元空间利用率占空间以后容量的百分比 |
CCS | 以百分比模式压缩的类空间利用率 |
YGC | 年老代 GC 事件的数量 |
YGCT | 年老代垃圾回收工夫 |
FGCT | 老年代 GC 工夫 |
GCT | 总垃圾回收工夫 |
LGCC | 上次垃圾回收的起因 |
GCC | 以后垃圾回收的起因 |
例子如下
jstat -gccause 86517
S0 S1 E O M CCS YGC YGCT FGC FGCT GCT LGCC GCC
0.00 7.93 42.77 86.85 93.51 79.91 425 9.173 0 0.000 9.173 CMS Initial Mark No GC
-gcnew <pid> 年老代对象的信息
列名 | 形容 |
---|---|
S0C | 幸存区 Survior S0 空间容量 (kb) |
S1C | 幸存区 Survior S1 空间容量(kb) |
S0U | 幸存区 Survior1 S0 应用空间(kb) |
S1U | 幸存区 Survior S1 应用空间(kb) |
TT | 年老代降职到年轻代的阈值 |
MTT | 年老代降职到年轻代最大阈值 |
DSS | 所需的 Survior1 幸存者大小 |
EC | Eden 区空间容量(kb) |
EU | Eden 区应用空间(kb) |
YGC | 年老代 gc 回收数量 |
YGCT | 年老代 gc 收集工夫 |
例子如下
jstat -gcnew 86517
S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT
66560.0 66560.0 0.0 5509.0 10 10 33280.0 532480.0 173025.7 465 9.724
jstat -gcnewcapacity 年老代空间大小统计
列名 | 形容 |
---|---|
NGCMN | Young 年老代最小的新一代容量(kB) |
NGCMX | Young 年老代最大新一代容量(kB) |
NGC | Young 年老代 以后容量(kB) |
S0CMX | 幸存区 Survior S0 最大容量(kB) |
S0c | 存区 Survior S0 空间容量 (kb) |
S1CMX | 幸存区 Survior S1 最大容量(kB) |
S1C | 存区 Survior S1 空间容量 (kb) |
ECMX | Eden 区空间最大容量(kb) |
EC | Eden 区空间容量(kb) |
YGC | 年老代 gc 回收数量 |
FGC | Full gc 执行回收数量 |
例子如下
jstat -gcnewcapacity 86517
NGCMN NGCMX NGC S0CMX S0C S1CMX S1C ECMX EC YGC FGC
0.0 665600.0 665600.0 66560.0 66560.0 66560.0 66560.0 532480.0 532480.0 512 0
jstat -gcold <pid> 年轻代空间大小统计
列名 | 形容 |
---|---|
MC | Metaspace 元空间容量(kB) |
MU | 元空间 MetaSpace 应用空间(kb) |
CCSC | 压缩类的空间(kB) |
CCSU | 压缩类应用空间(kb) |
OC | 老年代 Old 空间容量(kb) |
OU | 老年代 Old(kb) |
YGC | 年老代 gc 回收数量 |
FGC | Full gc 执行回收数量 |
FGCT | 老年代 GC 工夫 |
GCT | 总垃圾回收工夫 |
例子如下
jstat -gcold 86517
MC MU CCSC CCSU OC OU YGC FGC FGCT GCT
104656.0 97895.1 14492.0 11590.2 1431552.0 1245031.1 924 0 0.000 16.289
jstat -gcoldcapacity <pid> 年轻代容量空间大小统计
列名 | 形容 |
---|---|
OGCMN | Old 年轻代最小容量(kb) |
OGCMX | Old 年轻代最大容量(kb) |
OGC | 以后 Old 老年代容量(kB) |
OC | 以后旧的 Old 老年代容量(kB) |
YGC | 年老代 gc 回收数量 |
FGC | Full gc 执行回收数量 |
FGCT | 老年代 GC 工夫 |
GCT | 总垃圾回收工夫 |
例子如下
jstat -gcoldcapacity 86517
OGCMN OGCMX OGC OC YGC FGC FGCT GCT
0.0 1431552.0 1431552.0 1431552.0 1431552.0 939 0 0.000 16.459
jstat -gcmetacapacity <pid> 元数据空间统计
列名 | 形容 |
---|---|
MCMN | 最小 Metaspace 元空间容量(kB) |
MCMX | 最大 Metaspace 元空间容量(kB) |
MC | Metaspace 元空间容量(kB) |
CCSMN | 压缩类最小空间(kB) |
CCSMX | 压缩类最大空间(kB) |
CCSC | 压缩类空间容量(kb) |
CCSU | 压缩类应用空间(kb) |
YGC | 年老代 gc 回收数量 |
FGC | Full gc 执行回收数量 |
FGCT | 老年代 GC 工夫 |
GCT | 总垃圾回收工夫 |
例子如下
jstat -gcmetacapacity 86517
MCMN MCMX MC CCSMN CCSMX CCSC YGC FGC FGCT GCT
0.0 1140736.0 104656.0 0.0 1048576.0 14492.0 965 0 0.000 16.805
jstat -gcutil <pid> 垃圾收集统计信息摘要
列名 | 形容 |
---|---|
S0 | 幸存区 Survior S0 利用率占空间以后容量的百分比 |
S1 | 幸存区 Survior S1 利用率占空间以后容量的百分比 |
E | Eden 区利用率占空间以后容量的百分比 |
O | Old 老年代利用率占空间以后容量的百分比 |
M | Metaspace 元空间利用率占空间以后容量的百分比 |
CCS | 以百分比模式压缩的类空间利用率 |
YGC | 年老代 GC 事件的数量 |
YGCT | 年老代垃圾回收工夫 |
FGCT | 老年代 GC 工夫 |
GCT | 总垃圾回收工夫 |
例子如下
jstat -gcutil 86517
S0 S1 E O M CCS YGC YGCT FGC FGCT GCT
0.00 7.40 71.87 86.94 93.55 79.98 979 16.992 0 0.000 16.992
jstat -printcompilation Java HotSpot 虚拟机 编译办法统计
列名 | 形容 |
---|---|
Compiled | 最近编译的办法执行的编译工作数 |
Size | 最近编译的办法的字节码的字节数 |
Type | 最近编译的办法的编译类型 |
Method | 标识最近编译的办法的类名和办法名 |
例子如下
jstat -printcompilation 86517
Compiled Size Type Method
29939 77 1 org/apache/lucene/codecs/perfield/PerFieldDocValuesFormat$FieldsWriter <init>
Oracle 官网文档