Reading verbosegc output
The verbosegc output from WebSphere Application Server V6.1 is stored in the native_stderr.log file. This file is found in the server logs directory. Verbosegc content has changed formats from Java 1.4.2 to Java 5. Example 6-1 shows sample verbosegc output.
Verbosegc in Java 5 is outputted as xml. The xml format is more difficult for a person to read, but it provides a better format for monitoring and analysis tools to read.
Example 6-1 Sample verbosegc output in native_stderr.log
<af type="tenured" id="7" timestamp="Fri Sep 29 12:27:16 2006" intervalms="6384.924"><minimum requested_bytes="4194328" /><time exclusiveaccessms="0.823" /><tenured freebytes="20754960" totalbytes="104857600" percent="19" ><soa freebytes="17609232" totalbytes="101711872" percent="17" /><loa freebytes="3145728" totalbytes="3145728" percent="100" /></tenured><gc type="global" id="7" totalid="7" intervalms="6385.221"><compaction movecount="454417" movebytes="36596648" reason="compact to meetallocation" /><classloadersunloaded count="0" timetakenms="3.112" /><refs_cleared soft="133" weak="77" phantom="1" /><finalization objectsqueued="192" /><timesms mark="169.897" sweep="4.660" compact="335.373" total="513.365" /><tenured freebytes="68253888" totalbytes="104857600" percent="65" ><soa freebytes="64059584" totalbytes="100663296" percent="63" /><loa freebytes="4194304" totalbytes="4194304" percent="100" /></tenured></gc><tenured freebytes="64059560" totalbytes="104857600" percent="61" ><soa freebytes="59865256" totalbytes="100663296" percent="59" /><loa freebytes="4194304" totalbytes="4194304" percent="100" /></tenured><time totalms="514.485" /></af>
In Example 6-1, the event described is a collection caused by an allocation failure. The cause of each GC event can be discerned by the first tag; in this case, the tag for an allocation failure is <af>. Other causes of GC events are from either a concurrent collection or from a call to System.gc(). Concurrent GC events begin with <con>, while system GC events begin with the <sys> tag.
Table 6-4
Tag Description <af> An allocation failure has occurred <sys> A call to System.gc() has occurred <con> A concurrent event has taken place; can be contained within an <af> <time> Total amount of processor time for a particular event <minimum> Number of bytes requested that triggered the allocation failure <nursery> Status of the nursery area <tenured> Status of the tenured area <gc> A garbage collection occurred; can be either global or scavenger <compaction> A compaction occurred <expansion> Heap expansion occurred Common tags found in verbosegc output
This list of tags is only an overview of the most important ones. For a more detailed description of how to read xml verbosegc, see the Garbage Collector diagnostics in IBM Java 5 Diagnostics Guide.