読者です 読者をやめる 読者になる 読者になる

JavaのGCログを日付時刻で表示する

こんなのを見て。
http://www.theserverlabs.com/blog/2010/05/26/human-readable-jvm-gc-timestamps/

まずは基本編。
 -Xloggc:

 -Xloggc: タイムスタンプが付いたファイルにGCステータスのログを記録する

 -XX:+PrintGCDetails

 Print more details at garbage collection. Manageable. (Introduced in 1.4.0.)

次に問題のやつ。Oracleのサイトで資料が見つからない…。
 -XX:+PrintGCDateStamps

で試しにこんなのを設定すると、

 -Xloggc:./gc.log -XX:+PrintGCDateStamps -XX:+PrintGCDetails


こうなる。

2012-02-21T23:24:35.564+0900: 0.712: [GC [PSYoungGen: 16448K->2686K(19136K)] 16448K->2906K(62848K), 0.0158370 secs] [Times: user=0.03 sys=0.00, real=0.02 secs]
2012-02-21T23:24:35.981+0900: 1.129: [GC [PSYoungGen: 19109K->2679K(35584K)] 19329K->5567K(79296K), 0.0235950 secs] [Times: user=0.03 sys=0.00, real=0.03 secs]
2012-02-21T23:24:37.045+0900: 2.192: [GC [PSYoungGen: 35575K->2678K(35584K)] 38463K->15244K(79296K), 0.0277780 secs] [Times: user=0.04 sys=0.00, real=0.02 secs]
2012-02-21T23:24:37.276+0900: 2.424: [GC [PSYoungGen: 10039K->2678K(68480K)] 22606K->17616K(112192K), 0.0168570 secs]

とってもイイ。