OpenStack analytics dashboard
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Zuul d5c3358e5d Merge "Added CNTT" 3 weeks ago
doc/source Added github config options 10 months ago
etc Merge "Added CNTT" 3 weeks ago
stackalytics Merge "Show comments left to changes without vote" 4 months ago
tools Add tool to match default_data.json against OpenStackID service 2 years ago
.gitignore Switch to stestr 1 year ago
.gitreview OpenDev Migration Patch 9 months ago
.stestr.conf Switch to stestr 1 year ago
.zuul.yaml Remove redundant zuul lines 8 months ago
LICENSE Initial code commit 6 years ago Initial code commit 6 years ago
README.rst Clean up some twine warnings and errors 6 months ago
config-generator.conf Separate config module 2 years ago
requirements.txt Add config validation for default_data 2 years ago
setup.cfg Clean up some twine warnings and errors 6 months ago Sync requirements with OpenStack global requirements 2 years ago
test-requirements.txt Fixed sphinx in test-requirements.txt 8 months ago
tox.ini Add python 3.6 unit test job 1 year ago



Application Features

Stackalytics is a service that automatically analyzes OpenStack development activities and displays statistics on contribution. The features are:

  • Extraction of author information from git log, store it in the database;
  • Calculate metrics on number of lines changed (LOC) and commits;
  • Mapping authors to companies and launchpad ids;
  • Filter statistics by time, modules, companies, authors;
  • Extract blueprint and bug ids from commit messages;
  • Auto-update of database.


To run Stackalytics, you first need to create two kind of configuration files. The one is default_data.json which shows which sources(git repo, ml, etc.) need to be analyzed. Another is stackalytics.conf which shows basic configuration like HTTP listening host and port, etc. Stackalytics repository contains the default files of these configuration under etc/ directory. It would be useful to copy and change them as you like.

  1. You need to install Stackalytics. This is done with pip after you check out Stackalytics repository:

    $ git clone
    $ cd stackalytics
    $ sudo pip install -r requirements.txt
    $ sudo python install
  2. Install and run memcached DB:

    $ sudo apt-get install memcached
    $ memcached -u memcache -d
  3. Analyze data which are specifed on default_data.json and store the data into memcached DB:

    $ stackalytics-processor
  4. Start HTTP server of Stackalytics:

    $ stackalytics-dashboard
  5. Users can access Stackalytics site on as the default.

Project Info