GC Log解析
阿新 • • 發佈:2018-11-24
基本引數
-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實際耗時)]