From edbced4cda35e63c9ddc4e40a67807cbfd6d6c20 Mon Sep 17 00:00:00 2001 From: Mark Beierl Date: Sun, 8 May 2016 10:09:47 -0400 Subject: Add plots Adds matplotlib Adds support for generating graphs showing performance results Change-Id: Iba344baab89e35c0d5891a9d6b4c22c37666511e JIRA: STORPERF-44 JIRA: STORPERF-50 Signed-off-by: Mark Beierl --- storperf/storperf_master.py | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'storperf/storperf_master.py') diff --git a/storperf/storperf_master.py b/storperf/storperf_master.py index 2a03753..c7739da 100644 --- a/storperf/storperf_master.py +++ b/storperf/storperf_master.py @@ -15,6 +15,7 @@ import os import subprocess from db.configuration_db import ConfigurationDB +from db.job_db import JobDB from test_executor import TestExecutor import cinderclient.v2 as cinderclient import heatclient.client as heatclient @@ -31,6 +32,7 @@ class StorPerfMaster(object): self.logger = logging.getLogger(__name__) self.configuration_db = ConfigurationDB() + self.job_db = JobDB() template_file = open("storperf/resources/hot/agent-group.yaml") self._agent_group_hot = template_file.read() @@ -158,6 +160,22 @@ class StorPerfMaster(object): def warm_up(self, value): self._test_executor.warm = value + @property + def queue_depths(self): + return self._test_executor.queue_depths + + @queue_depths.setter + def queue_depths(self, value): + self._test_executor.queue_depths = value + + @property + def block_sizes(self): + return self._test_executor.block_sizes + + @block_sizes.setter + def block_sizes(self, value): + self._test_executor.block_sizes = value + @property def is_stack_created(self): if (self.stack_id is not None): @@ -262,7 +280,13 @@ class StorPerfMaster(object): thread.join() self._test_executor.slaves = slaves - return self._test_executor.execute() + job_id = self._test_executor.execute() + params = {} + params['agent_count'] = self.agent_count + params['public_network'] = self.public_network + params['volume_size'] = self.volume_size + self.job_db.record_workload_params(job_id, params) + return job_id def terminate_workloads(self): return self._test_executor.terminate() -- cgit 1.2.3-korg