Proof of concept for a UI for displaying messaging performance data
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc/api
gulp
src
.gitignore
CHANGELOG.md
LICENSE.txt
README.md
bower.json
gulpfile.js
package.json
preview.html

README.md

Messaging Performance UI

A simple website to display performance test data. It can be used along with msg-perf-tool.

Requirements

Basic Setup

You need a ElasticSearch instance. You can download ElasticSearch from [here]. Once downloaded and installed, you need to configure it to allow Cross Origin Resource Sharing (CORS). To do so, add the following to the configuration file in config/elasticsearch.yml:

http.cors.allow-origin: "*"
http.cors.enabled: true

For production usage, it may also be necessary to configure it to listen on all interfaces (or, at least, the one desired). You can do so by setting the following parameter:

network.host: 0.0.0.0

Data Setup

The easiest way to perform data loading is by using the mpt-loader tool in msg-perf-tool. The mpt-loader reads CSV files generated by mpt-parse and loads them into the database. It is still a work in progress, but overall usage can be summarized like this:

1 - Register you Software Under Test into the database:

./mpt-loader.py --register --sut-key "activemq" --sut-name "ActiveMQ" --sut-version "5.13.3"  --url http://<elastic-db-hostname>:9200/

2 - Register the test execution into the database:

./mpt-loader.py --testinfo --url http://<elastic-db-hostname>:9200 --testrun "001" --key "activemq" --start-time "2016-06-20 16:47:50" --osversion 7 --osname RHEL --ostype Linux  --comment "Small test set on RHEL 7"

3 - Load receiver latency performance data:

./mpt-loader.py --filename /path/to/receiver-latency-report.csv --type latency --sut "ActiveMQ" --url http://<elastic-db-hostname>:9200 --key activemq --testrun "001" --version "5.13.3" --direction receiver

4 - Load receiver throughput performance data:

./mpt-loader.py --filename /path/to/receiver-throughput-report.csv --type throughput --sut "ActiveMQ" --url http://<elastic-db-hostname>:9200 --key activemq --testrun "001" --version "5.13.3" --direction receiver

5 - Load sender throughput performance data:

./mpt-loader.py --filename /path/to/sender-throughput-report.csv --type throughput --sut "ActiveMQ" --url http://<elastic-db-hostname>:9200 --key activemq --testrun "001" --version "5.13.3" --direction sender

The steps 3-5 may take a few minutes to complete, depending on how big your data set is, as well as how powerful your database and network are. Repease steps 2-5 to add new test sets. To add another SUT, repeat ALL steps.

Development

Running local copy

To run local copy in development mode, execute:

gulp serve

This script should automatically open template in your default browser.

To run local copy in production mode, execute:

gulp serve:dist

For addition information about build, please check out this angular generator

License

MIT license.