解读日志信息
> [GC (Allocation Failure)
> [DefNew: 1013K->192K(1856K), 0.0018707 secs]
> [Tenured: 3508K->3699K(4096K), 0.0027271 secs]
> 4085K->3699K(5952K),
> [Metaspace: 2784K->2784K(1056768K)], 0.0046848 secs] [Times:
> user=0.00 sys=0.00, real=0.00 secs]
以上面的日志信息为例解读一下
GC:
表明进行了一次垃圾回收,前面没有Full修饰,表明这是一次Minor GC ,
注意它不表示只GC新生代,并且现有的不管是新生代还是老年代都会STW。
Allocation Failure:
表明本次引起GC的原因是因为在年轻代中没有足够的空间能够存储新的数据了。
[DefNew: 1013K->192K(1856K), 0.0018707 secs]
- DefNew表示的是新生代
- 三个参数分别为:GC前该内存区域使用容量,GC后该内存区域使用容量,该内存区域总容量。
- 该内存区域GC耗时,单位是秒
[Tenured: 3508K->3699K(4096K), 0.0027271 secs]
同理
4085K->3699K(5952K)
三个参数分别为:GC前堆区大小,GC后堆区大小,堆区总大小。
[Metaspace: 2784K->2784K(1056768K)], 0.0046848 secs]
同理
[Times: user=0.00 sys=0.00, real=0.00 secs]
分别表示用户态耗时,内核态耗时和总耗时