GCViewer
GCViewer copied to clipboard
Parse OpenJDK class histograms in the GC log files
When an OpenJDK VM is started with --XX:+PrintClassHistogramBeforeFullGC
or -XX:+PrintClassHistogramAfterFullGC
, the GC log contains many lines of class histograms.
The parser currently cannot parse them, which leads to a lot of parse errors.
The class histograms look like this:
193.647: [GC (Allocation Failure) 311936K->299240K(544128K), 0.0032713 secs]
num #instances #bytes class name
----------------------------------------------
1: 89311 107489032 [Ljava.lang.Object;
2: 287706 26877656 [C
...
17799: 1 16 sun.util.resources.LocaleData
17800: 1 16 sun.util.resources.LocaleData$LocaleDataResourceBundleControl
17801: 1 16 yaml.AppEngineYamlCompletionContributor
Total 4273598 302566696
193.913: [Full GC (Allocation Failure) 299240K->239109K(544128K), 0.6366351 secs]
The printClassHistogram options look like very verbose debug options, which usually make parsing of the file quite difficult. I personally have rather little priority on supporting the very verbose options and prefer to start support for jdk 9 logs in the little time I have.
looks like a duplicate of #152
It's not an exact duplicate. I only wish the parser would skip the class histograms, while in #152 there is a wish for displaying diffs of histograms. Just skipping them should be pretty easy.