OpenStack analytics dashboard
Go to file
Simon Li 42825353fe Add my info to stackalytics.
Change-Id: I9c6b3492319fa2dc98b1fd00f96ecdee778e5878
2020-08-12 11:00:24 +08:00
doc/source Fix up links and other updates 2020-03-10 15:38:25 -05:00
etc Add my info to stackalytics. 2020-08-12 11:00:24 +08:00
stackalytics Merge "Show comments left to changes without vote" 2019-09-16 19:32:50 +00:00
tools Add tool to match default_data.json against OpenStackID service 2017-08-25 16:24:41 +02:00
.gitignore Switch to stestr 2018-07-06 17:22:46 +07:00
.gitreview OpenDev Migration Patch 2019-04-19 19:51:10 +00:00
.stestr.conf Switch to stestr 2018-07-06 17:22:46 +07:00
.zuul.yaml Remove py27 zuul job 2020-04-07 16:47:36 +04:00
config-generator.conf Separate config module 2017-03-24 13:15:33 -07:00
LICENSE Initial code commit 2013-06-22 15:42:32 +04:00
MANIFEST.in Initial code commit 2013-06-22 15:42:32 +04:00
README.rst Fix up links and other updates 2020-03-10 15:38:25 -05:00
requirements.txt Add config validation for default_data 2017-04-06 12:33:38 -07:00
setup.cfg Clean up some twine warnings and errors 2019-07-03 12:44:05 -07:00
setup.py Sync requirements with OpenStack global requirements 2017-03-29 16:45:01 +04:00
test-requirements.txt Pin mock library to avoid test failures 2020-02-14 09:27:55 +01:00
tox.ini Add python 3.6 unit test job 2018-11-06 01:31:46 -08:00

Stackalytics

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.

Quickstart

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 https://opendev.org/x/stackalytics
    $ cd stackalytics
    $ sudo pip install -r requirements.txt
    $ sudo python setup.py 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 http://127.0.0.1:8080 as the default.

Project Info