Team and repository tags
A visualization utility to help analyze the performance of DevStack setup and Tempest executions. This repository can be cloned and built to use Stackviz with local run data. Stackviz is currently in the process of being implemented upstream (see Roadmap and Planning). To use Stackviz with upstream gate runs, please see the server deployment project at:
Installation - Frontend
Installation of the frontend requires Node.js and Gulp. On Ubuntu:
sudo apt-get install nodejs sudo apt-get install npm sudo npm install -g gulp
Then, install the Node modules by running, from the project directory:
Installation - Processing
The data processor is a small Python module located in the same source tree. To install, run:
sudo pip install .
Usage - Development
A development server can be run as follows:
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/
gulp dev, files written to
app/data/ will be automatically synchronized with the browser. Note that these files will not be copied to
gulp prod, but you can copy them manually using
Usage - Production
The production application can be build using:
You should probably install this into a
virtualenv on the target system:
virtualenv stackviz ./virtualenv/bin/pip install /path/to/stackviz-VERSION.tar.gz # to run stackviz export ./virtualenv/bin/stackviz-export
Note the required html will be placed in
virtualenv/share/stackviz-html as a data-file (or elsewhere, if installed as a system package; this may vary on distributions). This can be moved as required. Note that all files in there are not required:
- Directory structure (
- Static resources (
- Core files (
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.gz): only required for debugging purposes.
Data should be written to
stackviz-export like above.
- Python tests:
tox -e py36
Manuals & Developer Docs
For more detailed information on how Stackviz works, please see the manuals located at doc/source/man/