GC Log Viewer - An Web App to Graph JVM -X:loggc Log Files!

GCLogViewer is an online Java garbage collection log graphing application  (←click here) that runs entirely in the browser. It takes the log file generated by the "-X:loggc"  and produces a simple graph showing the JVM memory management and collections over the duration of the log file.

HTML/Javascript Application Written Using AngularJS

​The web application runs entirely in the browser with no information being uploaded or processed on the server. Log files are ingested into the application once uploaded and graphs can be generated from the loaded data. Any log files ingested are persisted between browser sessions so you can load daily or weekly files and compare.

The application was written partly to get a real world example of an HTML5/JavaScript application that is non-trivial and to provide our consultants with an easy to use, and readily available tool, to troubleshoot JVM performance issues. The application makes use of AngularJS, Bootstrap for styling and SVG for graphing.

GCLogViewer - JVM Performance Tuning

Now it is easy to get a quick overview of your applications memory management from the gc log files, rather than wading through lines of obscure and obfuscated output to try and get an idea of where the problem might be. One key graph we will be adding in future is the garbage collection pause times. The data is already parsed and loaded into IndexedDB it just needs to be added to the graph.

GC Log Viewer Output

GC Log Viewer Mutli Graphs