jstat是jdk的内置命令,用于监控jvm内存及gc活动的工具
用法如下:
- jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]
-t :代表时间粗
-h<lines>:即-h跟数字,代表隔几行显示标题
vmid :代表vm进程id
interval:代表监控间隔时间段,默认毫秒做单位
count:代表取数次数
例:jstat -gcutil -t -h5 123456 1000 100
表示每1000毫秒收集一次jvm内存和gc信息,共收集100次,每隔5行显示一次标题,且标题行带时间戳
- jstat -gc pid
显示gc的信息,查看gc的次数,及时间。
- jstat -gccapacity pid
VM分代内存的使用和占用大小。
- jstat -gcutil pid
统计gc信息统计。
- jstat -gcnew pid
年轻代对象的信息。
- jstat -gcnewcapacity pid
年轻代对象的信息及其占用量。
- jstat -gcold pid
old代对象的信息。
- jstat -gcoldcapacity pid
old代对象的信息。
- jstat -gcpermcapacity pid
perm对象的信息及其占用量。
- jstat -class pid
显示加载class的数量,及所占空间等信息。
- jstat -compiler pid
显示VM实时编译的数量等信息。
- jstat -printcompilation pid
当前VM执行的信息。
一些术语的中文解释:
S0C:年轻代中第一个survivor(幸存区)的容量 (字节)
S1C:年轻代中第二个survivor(幸存区)的容量 (字节)
S0U:年轻代中第一个survivor(幸存区)目前已使用空间 (字节)
S1U:年轻代中第二个survivor(幸存区)目前已使用空间 (字节)
EC:年轻代中Eden(伊甸园)的容量 (字节)
EU:年轻代中Eden(伊甸园)目前已使用空间 (字节)
OC:Old代的容量 (字节)
OU:Old代目前已使用空间 (字节)
PC:Perm(持久代)的容量 (字节)
PU:Perm(持久代)目前已使用空间 (字节)
YGC:从应用程序启动到采样时年轻代中gc次数
YGCT:从应用程序启动到采样时年轻代中gc所用时间(s)
FGC:从应用程序启动到采样时old代(全gc)gc次数
FGCT:从应用程序启动到采样时old代(全gc)gc所用时间(s)
GCT:从应用程序启动到采样时gc用的总时间(s)
NGCMN:年轻代(young)中初始化(最小)的大小 (字节)
NGCMX:年轻代(young)的最大容量 (字节)
NGC:年轻代(young)中当前的容量 (字节)
OGCMN:old代中初始化(最小)的大小 (字节)
OGCMX:old代的最大容量 (字节)
OGC:old代当前新生成的容量 (字节)
PGCMN:perm代中初始化(最小)的大小 (字节)
PGCMX:perm代的最大容量 (字节)
PGC:perm代当前新生成的容量 (字节)
S0:年轻代中第一个survivor(幸存区)已使用的占当前容量百分比
S1:年轻代中第二个survivor(幸存区)已使用的占当前容量百分比
E:年轻代中Eden(伊甸园)已使用的占当前容量百分比
O:old代已使用的占当前容量百分比
P:perm代已使用的占当前容量百分比
S0CMX:年轻代中第一个survivor(幸存区)的最大容量 (字节)
S1CMX :年轻代中第二个survivor(幸存区)的最大容量 (字节)
ECMX:年轻代中Eden(伊甸园)的最大容量 (字节)
DSS:当前需要survivor(幸存区)的容量 (字节)(Eden区已满)
TT: 持有次数限制
MTT : 最大持有次数限制
网友评论