Java GCログフォーマット理解のまとめ
1513 ワード
Java GCログフォーマット理解のまとめ
次に、典型的なGCログを分析します.33.125100.667:GCが発生した時刻を表し、Java仮想マシンが起動してから経過した秒数 を意味する[GCと[FullGC:今回のごみ回収停止タイプを説明した.「Full」があれば、今回のGCでStop-The-world(STW)が発生したことを説明した. System.gc()メソッドを呼び出してトリガーされた収集であれば、ここに「[FullGC(System)」 が表示される.
[DefNew,[Tenured,[perm:GCで送信された領域を表し、GCコレクタの使用と密接に関連している 使用しているSerialコレクタの新世代名は「Default New Generation」なので「[DefNew] 使用されているParNewコレクタの新世代名は「Parallel New Generation」なので「[parNew」 使用するParallel Scavengeコレクタの新世代名は「Parallel Scavenge Young Generation」なので「[PSyoungGen] 旧世代Tenuredと永久世代Permは同じで、具体的な名称は依然として使用するコレクターによって決定される [..3324K->152 K(3712 K)...]:フォーマットの意味は、「GC前にメモリ領域が使用された容量->GC後にメモリ領域が使用された容量(メモリ領域の総容量) [...]3324 K->152 K(11904 K)…:フォーマットの意味は「GC前Javaヒープ使用容量->GC後Javaヒープ使用容量(Javaヒープ総容量)」 0.0031680 secs:メモリ領域GCが消費する時間、単位秒を示す. コレクタによっては、より具体的な時間が与えられる場合もあります"[Times:user=0.01 sys=0.00,real=0.02 secs]" は、ユーザ状態で消費されるCPU時間、カーネル状態で消費されるCPU時間、および動作の開始から終了までの経過時間を表す. TIP:Wall Clock Time(Wall Clock Time)は、ディスクIOのような非演算の待ち時間を含む.CPU時間は、これらの待ち時間を含まない
次に、典型的なGCログを分析します.
33.125: [GC[DefNew:3324K->152K(3712K), 0.0025925 secs]3324K->152K( 11904K), 0.0031680 secs]
100.667: [FullGC[Tenured: 0 K->210K(10240K) , 0.0149142secs]4603K->210K( 19456K) , [Perm: 2999K->2999K( 21248K) ], 0.0150007 secs][Times: user=0.01 sys=0.00, real=0.02 secs]