GC Log解析

基本参数

-XX:+PrintGC 输出GC日志
-XX:+PrintGCDetails 输出GC的详细日志
-XX:+PrintGCTimeStamps 输出GC的时间戳(以基准时间的形式)
-XX:+PrintGCDateStamps 输出GC的时间戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)
-XX:+PrintHeapAtGC 在进行GC的前后打印出堆的信息
-Xloggc:/var/log/gc/default.log 日志文件的输出路径

开启配置

-XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/var/log/gc/default.log

日志采样

2.641: [GC [PSYoungGen: 132096K->14320K(153600K)] 132096K->14392K(503296K), 0.0213210 secs] [Times: user=0.05 sys=0.02, real=0.02 secs]
4.183: [GC [PSYoungGen: 146416K->18016K(153600K)] 146488K->18096K(503296K), 0.0221550 secs] [Times: user=0.04 sys=0.01, real=0.02 secs]
6.028: [GC [PSYoungGen: 150112K->16226K(153600K)] 150192K->16314K(503296K), 0.0204860 secs] [Times: user=0.07 sys=0.00, real=0.02 secs]
6.288: [GC [PSYoungGen: 148322K->13686K(153600K)] 148410K->13774K(503296K), 0.0158720 secs] [Times: user=0.05 sys=0.00, real=0.02 secs]
6.519: [GC [PSYoungGen: 145782K->13798K(153600K)] 145870K->13894K(503296K), 0.0166900 secs] [Times: user=0.06 sys=0.00, real=0.02 secs]
6.741: [GC [PSYoungGen: 145894K->13926K(156672K)] 145990K->14030K(506368K), 0.0142980 secs] [Times: user=0.05 sys=0.00, real=0.01 secs]

输出格式

时间戳:[ YGC:[年轻代:回收前 -> 回收后 (耗时)] 堆区:回收前 -> 回收后(总大小), 耗时] [Times: user=YGC用户耗时)sys=YGC系统耗时, real=YGC实际耗时]

案例分析

5.617(时间戳): [GC(Young GC) 5.617(时间戳): [ParNew(使用ParNew作为年轻代的垃圾回收期): 43296K(年轻代垃圾回收前的大小)->7006K(年轻代垃圾回收以后的大小)(47808K)(年轻代的总大小), 0.0136826 secs(回收时间)] 44992K(堆区垃圾回收前的大小)->8702K(堆区垃圾回收后的大小)(252608K)(堆区总大小), 0.0137904 secs(回收时间)] [Times: user=0.03(Young GC用户耗时) sys=0.00(Young GC系统耗时), real=0.02 secs(Young GC实际耗时)]

猜你喜欢

转载自blog.csdn.net/lpw_cn/article/details/84434919
GC
今日推荐