From 2994748e8112feccf870ff9db923040346dfee60 Mon Sep 17 00:00:00 2001 From: mbeierl Date: Fri, 17 Feb 2017 17:43:39 -0500 Subject: Steady State Metrics Changes the overall value of all metrics to be based on the calculated steady state values instead of the average for the entire run. Change-Id: I121929d5fe2dd43df7f289b82e9f5291c9ea9aab JIRA: STORPERF-107 Signed-off-by: mbeierl --- storperf/utilities/data_handler.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'storperf/utilities') diff --git a/storperf/utilities/data_handler.py b/storperf/utilities/data_handler.py index a4c9ae4..d95d6fa 100644 --- a/storperf/utilities/data_handler.py +++ b/storperf/utilities/data_handler.py @@ -37,6 +37,10 @@ class DataHandler(object): if executor.terminated: self._push_to_db(executor) else: + workload = '.'.join(executor.current_workload.split('.')[1:6]) + if 'metrics' not in executor.metadata: + executor.metadata['metrics'] = {} + steady_state = True metrics = {} for metric in ('lat.mean', 'iops', 'bw'): @@ -60,14 +64,15 @@ class DataHandler(object): math.slope(treated_data['slope_data']) metrics[metric][io_type]['range'] = \ math.range_value(treated_data['range_data']) - metrics[metric][io_type]['average'] = \ - math.average(treated_data['average_data']) + average = math.average(treated_data['average_data']) + metrics[metric][io_type]['average'] = average + + metrics_key = '%s.%s.%s' % (workload, io_type, metric) + executor.metadata['metrics'][metrics_key] = average if not steady: steady_state = False - workload = '.'.join(executor.current_workload.split('.')[1:6]) - if 'report_data' not in executor.metadata: executor.metadata['report_data'] = {} @@ -168,9 +173,7 @@ class DataHandler(object): payload['timestart'] = executor.start_time payload['duration'] = duration - graphite_db = GraphiteDB() - payload['metrics'] = graphite_db.fetch_averages( - executor.job_db.job_id) + if steady_state: criteria = 'PASS' else: -- cgit 1.2.3-korg