GC 日志格式

随机截取一段GC日志

55442.859: [GC 55442.860: [DefNew: 421455K->2848K(471872K), 0.0186330 secs] 691020K->272414K(1176384K), 0.0189020 secs] [Times: user=0.02 sys=0.00, real=0.02 secs]
55484.830: [GC 55484.830: [DefNew: 422303K->2299K(471872K), 0.0179130 secs] 691869K->271866K(1176384K), 0.0181820 secs] [Times: user=0.02 sys=0.00, real=0.01 secs]
55523.850: [GC 55523.850: [DefNew: 421755K->2763K(471872K), 0.0191260 secs] 691322K->272330K(1176384K), 0.0194560 secs] [Times: user=0.02 sys=0.00, real=0.02 secs]

55442.859是从JVM启动以来经历的秒数,可以认为是发生GC的相对时间。GC表示是否暂停线程,也就是著名的Stop-The-World, Full GC代表发生了线程暂停。DefNew是GC发生的内存区域,DefNew是默认的新生代,还可能是ParNew,Tentured,Perm。接下来的数字与该内存区域大小有关,格式为GC前该区域大小->GC后该区域大小(该区域总容量)。方括号外的数字与整个堆的大小有关,格式为GC前堆大小->GC后堆大小(堆总容量)。最后是GC占用时间。

总结下来,GC日志格式为
$发生时间:[$是否STW $发生时间: [$内存区域: $该区域GC前大小->$该区域GC后大小($该区域总容量), $该区域GC耗时] $GC前堆大小->$GC后堆大小($堆总容量), $GC总耗时][$GC总耗时]

GC 基础知识可以参考 Java Garbage Collection Basics

你可能感兴趣的:(GC 日志格式)