官网手册:
- https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/index.html
- https://docs.oracle.com/javase/8/docs/technotes/tools/unix/toc.html
jps
列出指标零碎上已检测到的Java虚拟机(JVM)
jps -lvm
输入:
jstat
监督Java虚拟机(JVM)统计信息
# 每1000ms输入一次gc统计信息,循环10次 jstat -gc 7 1000 10
后果:
垃圾收集的堆统计信息:
S0C
:以后生存空间0容量(kB)。S1C
:以后生存空间1的容量(kB)。S0U
:幸存者空间0利用率(kB)。S1U
:幸存者空间1利用率(kB)。EC
:以后Eden空间容量(kB)。EU
:Eden空间利用率(kB)。OC
:以后的旧空间容量(kB)。OU
:旧空间利用率(kB)。MC
:元空间容量(kB)。MU
:元空间利用率(kB)。CCSC
:压缩的类空间容量(kB)。CCSU
:应用的压缩类空间(kB)。YGC
:年轻一代垃圾收集事件的数量。YGCT
:年轻一代垃圾回收工夫。FGC
:残缺GC事件的数量。FGCT
:残缺的垃圾收集工夫。GCT
:总垃圾收集工夫。
其余选项options
options | action |
---|---|
-class | 类加载器统计信息 |
-compiler | Java HotSpot VM即时编译器统计信息 |
-gc | 垃圾收集的堆统计信息 |
-gccapacity | 内存池的生成和空间容量 |
-gcutil | 垃圾收集统计信息摘要 |
-gccause | 与 -gcutil 信息雷同, 但包含上一个和以后垃圾收集事件(如果有)的起因 |
-gcnew | 新一代统计数据 |
-gcnewcapacity | 新一代空间大小统计信息 |
-gcold | 老一代和元空间行为统计 |
-gcoldcapacity | 老一代和元空间大小统计信息 |
-gcmetacapacity | 元空间大小统计信息 |
-printcompilation | Java HotSpot VM编译器办法统计信息 |
jstack
打印Java过程,外围文件或近程调试服务器的Java线程堆栈跟踪
# 打印全副线程状态 jstack 7
jmap
打印Java过程,外围文件或近程调试服务器的Java线程堆栈跟踪
# 列出占用内存最大的几个对象 jmap -histo 7 | head -n 15
留神: 应用jmap -histo:live
或者jmap -dump:live
都会触发Full GC