1.GC日志輸出參數
1.1 編寫測試代碼
public static void main(String[] args) throws InterruptedException { List<Object> list = new ArrayList<Object>(); while (true) { int sleep = new Random().nextInt(100); if (System.currentTimeMillis() % 2 == 0) { list.clear(); } else { for (int i = 0; i < 10000; i++) { Properties properties = new Properties(); properties.put("key_" + i, "value_" + System.currentTimeMillis() + i); list.add(properties); } } Thread.sleep(sleep); } }
1.2 修改VM options參數 -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+PrintHeapAtGC -Xloggc:F://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:../logs/gc.log 日志文件的輸出路徑
1.3 查看 生成日志
1.4 查看日志 內容
2. GC可視化工具
GC Easy是一款在線的可視化工具,易用、功能強大,網站: http://gceasy.io/
點擊Analye后可查看日志文件報告
上傳的文件名 可下載 可分享
關鍵績效指標
交互式圖標