Performance and debugging visualization for DevStack and Tempest
Go to file
Tim Buckley 35a5b6b9f7 Allow sharing of selected item by page URL.
This patch adds the ability for users to share a selected timeline
item via the page URL. When an item is selected, the page address
is updated to include the current test name as a parameter. If
this link is shared, the test named in the URL will automatically
be highlighed when the page is loaded.

Change-Id: I228d58e68ee986f621a3763bba1a565300c79023
2015-11-20 16:31:21 -07:00
app Allow sharing of selected item by page URL. 2015-11-20 16:31:21 -07:00
doc/source Convert README to rst, and add documentation template from cookiecutter 2015-08-03 10:15:34 -06:00
gulp Switch to eslint. 2015-11-18 15:36:36 -07:00
stackviz Removed unused settings.py. 2015-11-18 15:08:14 -07:00
test Switch to eslint. 2015-11-18 15:36:36 -07:00
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 14:55:37 +00:00
.eslintignore Switch to eslint. 2015-11-18 15:36:36 -07:00
.eslintrc Switch to eslint. 2015-11-18 15:36:36 -07:00
.gitignore Remove all Django-related functionality. 2015-09-30 13:25:30 -06:00
.gitreview Add .gitreview file 2015-09-14 15:59:30 -06:00
.testr.conf Add more test cookiecutter template items 2015-08-03 11:26:08 -06:00
CONTRIBUTING.rst Add more test cookiecutter template items 2015-08-03 11:26:08 -06:00
HACKING.rst Add .gitignore entries, HACKING.rst, and __init__.py contents from cookiecutter 2015-08-03 10:01:01 -06:00
LICENSE Add some missing base files from cookiecutter (LICENSE, manifest, setuptools config) 2015-08-03 09:11:51 -06:00
MANIFEST.in Include bower components during `setup.py install`, and use properly use relative static directory during export. 2015-08-13 14:45:09 -06:00
README.rst Update README.rst to include upstream planning etherpad 2015-11-05 09:43:50 -07:00
babel.cfg Add stub unit tests from cookiecutter 2015-08-03 10:37:55 -06:00
gulpfile.js Add initial Angular boilerplate files. 2015-09-25 16:26:44 -06:00
package.json Switch to eslint. 2015-11-18 15:36:36 -07:00
requirements.txt Remove all Django-related functionality. 2015-09-30 13:25:30 -06:00
setup.cfg Move export_static.py to export.py; add executable command definition to setup.cfg to install `stackviz-export` command during `setup.py install`. 2015-08-11 17:06:09 -06:00
setup.py Add some missing base files from cookiecutter (LICENSE, manifest, setuptools config) 2015-08-03 09:11:51 -06:00
test-requirements.txt Add stub unit tests from cookiecutter 2015-08-03 10:37:55 -06:00
tox.ini Remove all Django-related functionality. 2015-09-30 13:25:30 -06:00

README.rst

StackViz: Angular

A visualization utility to help analyze the performance of DevStack setup and Tempest executions.

Installation

Installation of the frontend requires Node.js and Gulp. On Ubuntu:

sudo apt-get install nodejs npm nodejs-legacy
sudo npm install -g gulp

Then, install the Node modules by running, from the project directory:

npm install

Usage - Development

A development server can be run as follows:

gulp dev

This will open a web browser and reload code automatically as it changes on the filesystem.

If you have subunit and dstat logs, you can create a config.json to display your runs:

stackviz-export -f <path/to/subunit> --dstat <path/to/dstat> app/data/

Usage - Production

The production application can be build using:

gulp prod

The result will be written to ./build and should be appropriate for distribution. Note that all files are not required:

  • Directory structure (js/, css/, fonts/, images/): required.
  • Static resources (fonts/, images/): required.
  • Core files (index.html, js/main.js, css/main.css): required unless gzipped versions are used.
  • Gzipped versions of core files (*.gz): not required, but preferred. Use instead of plain core files to save on disk usage and bandwidth.
  • Source maps (js/main.js.map, js/main.js.map.gz): only required for debugging purposes.

Roadmap

  • Project split: All server-side components will be removed, and replaced with specialized data transformation tools.

    - Data sources and processing: stackviz Python project, with

    stackviz-export used to generate JSON data files and configuration.

    • Web interface:
      • Will remain in this namespace (openstack-qa/stackviz).
      • Will decouple data processing from build process, allowing for distribution to nodes as a prebuilt static site.
      • Data sources will be configured in a config.json.
      • Will support local and remote sources via REST/JSONP (pending API spec).
  • Upstream Implementation: https://etherpad.openstack.org/p/BKgWlKIjgQ