CodeQuality by Metrix++ 1:Codebase

Visualize code quality metrics LoC (Lines of Code), CC (Cyclomatic Complexity) and resulting CCD (Cyclomatic Complexity Density) collected for your codebase by Metrix++ in Prometheus

CodeQuality by Metrix++ 1:Codebase screenshot 1
CodeQuality by Metrix++ 1:Codebase screenshot 2
CodeQuality by Metrix++ 1:Codebase screenshot 3

This dashboard allows you to visualize code quality metrics

  1. LoC (Lines of Code)
  2. CC (Cyclomatic Complexity)
  3. and the resulting CCD (Cyclomatic Complexity Density), as division of CD by LoC

(all 3 horizontally in successive columns) collected for your codebase (C/C++, C# and Java) by Metrix++ in Prometheus. For each metric, 3 graphs are rendered vertically showing successively:

  1. total absolute for the current selection (codebase)
  2. distribution of the total 1. over the next level items (folders)
  3. deviation over the time of the total 1. by next level items (folders)

It is part of a set of 3 dashboards, linked for the sake of drilldown analysis:

  1. CodeQuality by Metrix++ 1:Overall
  2. CodeQuality by Metrix++ 2:Folder
  3. CodeQuality by Metrix++ 3:File

CodeQuality by Metrix++ 1:Overall is designed as first dashboard used during analysis, showing overall metrics at codebase level up to (scolling down to) the next level information about folders, with support for drilldown to the next linked CodeQuality by Metrix++ 2:Folder.

First it requires you to put Metrix++ in place for your codebase (C/C++, C# and Java), (see also its github repo), and to setup a Prometheus instance scraping the output of the following commands:

  • python metrix++.py view --ll=ERROR --format=prometheus
  • python metrix++.py view --ll=ERROR --format=prometheus -- /home/mycodebase
  • python metrix++.py view --ll=ERROR --format=prometheus -- /home/mycodebase/src
  • python metrix++.py view --ll=ERROR --format=prometheus -- /home/mycodebase/src/main
  • python metrix++.py view --ll=ERROR --format=prometheus -- /home/mycodebase/src/main/java
  • python metrix++.py view --ll=ERROR --format=prometheus -- /home/mycodebase/src/main/java/Foo.java
Revisions
RevisionDescriptionCreated

Get this dashboard

Import the dashboard template

or

Download JSON

Datasource
Dependencies