GC 日志分析工具GChisto
來自: http://blog.csdn.net/wenniuwuren/article/details/50760259
零. 簡介
《Java 性能優化權威指南》介紹了一款分析 GC 日志的離線分析工具, 不過官網上沒有下載的地方, 需要自己從 SVN 上拉下來編譯。 GChisto 以表格和圖形化的方式展示 GC 次數、 持續時間等, 提高了分析 GC 日志的效率。
一. 實踐
編譯成功后, 直接 java -jar 運行起來, 把 GC 日志 .log 文件 add 到 GChisto, GChisto 加載日志可能運行比較久, 需要等待一會。
1. 導入成功, 切到 GC Pause Stats 選項卡, 可以大致看下 GC 的次數、 GC 的時間、 GC 的開銷、 最大 GC 時間和最小 GC 時間等
垃圾收集的開銷(Overhead)表示垃圾收集的調優程度。 一般情況, 并發垃圾收集的開銷應該小于 10%, 也有可能達到 1% ~ 3%。
2. 切到 GC Pause Distribution 選項卡, 可以查看 GC 停頓的詳細分布, x 軸表示垃圾收集停頓時間, y 軸表示是停頓次數。

上圖可以看出有一次 remark 時間是 3.6 秒左右, 這個就值得注意下當時發生了什么, 是應用問題, 還是 JVM 參數需要調優。
3. 切換到 GC Timeline 選項卡, 可以顯示整個時間線上的垃圾收集, 以便于按時間去查找應用日志(tomcat 日志等), 去了解峰值時系統發生了什么。

不過這個工具似乎沒怎么維護了, 存在不少 bug, 使用過程發現識別不了 JDK 1.7 GC 日志的 Young GC, 還有一些 NullPointer 錯誤。 整體來說, 只能觀察某些參數
本文由用戶 IsiCrockett 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!