Overview

If you're like us, you probably have a wide array of metrics for your projects - code coverage, complexity, coupling, bugs, tests, suspicious code, style violations, copy/paste detectors, performance measurements, dependency analysis and more.

And with all those metrics, it can be a struggle to get a single, simple view of what's going on with your project, and, perhaps more importantly, how your project's metrics are changing over time.

That's why we built FuseMetrics. It analyzes your metrics data, and produces a single page view of whichever metrics you find interesting, including trending graphs and some histographic analysis of your entire codebase. It's open source, extendable, and easy to use.

What it does

FuseMetrics produces sparkline graphs of metrics values over time

  • (Test Failures)
  • (Code Duplication)

And histograms of the characteristics of the overall code base

And combines them together to produce a single-page dashboard (screenshot) that you can customize to your heart's content.

Where can I get it?

Binary: Download the master zip file here. -- tbd

Source: Check out the code from Google Code

How Does It Work?

FuseMetrics analyzes the .xml files from your existing metrics - Checkstyle, CPD, PMD, FindBugs, JDepend, JUnit, Clover, Cobertura and many more, and pulls in the top-level metrics from those tools. It uses a plugin architecture, so new metrics and changes to XML structure can be easily supported.

As it gathers metrics, it stores them in memory, so it can produce Sparkline trend graphs and histograms of the overall code base.

Lastly, it builds a simple template-based dashboard HTML page, where all these graphs and metrics can be combined into one view.

What's under the covers?

FuseMetrics is written in Groovy, and use JFreeChart and the nu.xom XML parser.

Who's responsible for this mess?

FuseMetrics was written primarily by John Brothers and Meera Subbarao, based on original concepts by Andy Glover