OpenStack analytics dashboard
Go to file
Zuul 1650fb1c9a Merge "Update company association for Brin Zhang" 2018-10-24 08:03:11 +00:00
doc/source Trivial: Update Zuul Status Page to correct URL 2018-05-25 10:13:09 +07:00
etc Merge "Update company association for Brin Zhang" 2018-10-24 08:03:11 +00:00
stackalytics Add references to data sources 2018-05-17 17:24:38 +02: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 Update .gitreview for new namespace 2015-10-17 22:38:57 +00:00
.stestr.conf Switch to stestr 2018-07-06 17:22:46 +07:00
.zuul.yaml Move Zuul job configuration from global config into the project 2018-10-04 09:35:15 +02: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 Remove "-y" option for package install command. 2018-01-05 16:37:03 +08:00
config-generator.conf Separate config module 2017-03-24 13:15:33 -07:00
requirements.txt Add config validation for default_data 2017-04-06 12:33:38 -07:00
setup.cfg Optimize the link address 2017-06-08 17:36:42 +07:00
setup.py Sync requirements with OpenStack global requirements 2017-03-29 16:45:01 +04:00
test-requirements.txt Switch to stestr 2018-07-06 17:22:46 +07:00
tox.ini Don't quote {posargs} in tox.ini 2018-10-09 14:29:09 +05:30

README.rst

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://git.openstack.org/openstack/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