chewiebug/gcviewer

Fork of tagtraum industries' GCViewer. Tagtraum stopped development in 2008, I aim to improve support for Sun's / Oracle's java 1.6+ garbage collector logs...

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 31 minutes ago
Type:ApplicationCategory(s):Debugging & ProfilingDeveloper Tools
Added to GitGenius on September 14th, 2026
Created on October 23rd, 2011
Open Issues & Pull Requests: 84 (+0)
GitHub issues: Enabled
Number of forks: 992
Total Stargazers: 4,648 (+0)
Total Subscribers: 259 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 12.9 days
Mean response time: 102.2 days
90th percentile: 360.8 days
Tracked items: 5

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 7
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,009 days
Stale 30+ days: 7
Stale 90+ days: 7

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

GCViewer is a tool that visualizes verbose garbage collection logs generated by Java Virtual Machines from Sun, Oracle, IBM, HP, and BEA.

The tool solves the problem of analyzing and understanding JVM garbage collection behavior by parsing verbose GC output and presenting it visually. It reads GC logs in multiple formats spanning decades of Java versions and renders them as charts alongside detailed metrics. The approach works through format-specific parsers that extract timing, pause duration, heap usage, and collector activity from logs, then displays this data both graphically and in tabular form. It supports both single log files and rotated log file sequences processed in one pass.

GCViewer suits teams debugging garbage collection performance issues or tuning JVM parameters. It works best with Oracle JDK logs generated using -Xloggc with -XX:+PrintGCDetails and -XX:+PrintGCDateStamps flags, though it also handles OpenJDK 9+ unified logging format and legacy formats from JDK 1.2 through 1.8, as well as logs from IBM, HP, and BEA JVMs. The tool runs as a standalone GUI by double-clicking the JAR file or from the command line to generate CSV reports and chart images, making it suitable for both interactive exploration and automated analysis pipelines. No alternatives are named in the README.

The project maintains active support for modern Java garbage collectors including G1, addressing a gap left when the original development ended. It accepts contributions that extend parser coverage for new JVM versions and log formats. The codebase remains organized around format-specific reader classes, allowing targeted improvements for particular Java versions or vendors without affecting others.