diff options
author | mbeierl <mark.beierl@dell.com> | 2018-07-05 15:22:43 -0400 |
---|---|---|
committer | mbeierl <mark.beierl@dell.com> | 2018-07-06 16:40:31 -0400 |
commit | ff389f460711b17db2070ca90417f7ebbc0eff56 (patch) | |
tree | 6292493f1acad91b406bfc126885c5bf8c6532ca /docker/storperf-master/storperf/fio/fio_invoker.py | |
parent | 3de258b9d0f6d4249a5e7f42eec41fcb0080bc66 (diff) |
Support Custom Workloads
Refactors interaction with test_executor to clean up the
tight coupling.
Adds ability to specify custom workloads.
Change-Id: Idbadcec1f42714e96c5f96d1e45c05982a531503
JIRA: STORPERF-246
Co-Authored-By: Ameed.Ashour.Ext@Nokia.com
Signed-off-by: mbeierl <mark.beierl@dell.com>
Diffstat (limited to 'docker/storperf-master/storperf/fio/fio_invoker.py')
-rw-r--r-- | docker/storperf-master/storperf/fio/fio_invoker.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/docker/storperf-master/storperf/fio/fio_invoker.py b/docker/storperf-master/storperf/fio/fio_invoker.py index 0360ea2..a361eec 100644 --- a/docker/storperf-master/storperf/fio/fio_invoker.py +++ b/docker/storperf-master/storperf/fio/fio_invoker.py @@ -23,6 +23,7 @@ class FIOInvoker(object): self.callback_id = None self.terminated = False self.metadata = var_dict + self.stderr = [] @property def remote_host(self): @@ -60,13 +61,13 @@ class FIOInvoker(object): "Event listener callback") event_listener( self.callback_id, json_metric) - except Exception, e: + except Exception as e: self.logger.exception( "Notifying listener %s: %s", self.callback_id, e) self.logger.debug( "Event listener callback complete") - except Exception, e: + except Exception as e: self.logger.error("Error parsing JSON: %s", e) except IOError: pass # We might have read from the closed socket, ignore it @@ -78,6 +79,7 @@ class FIOInvoker(object): self.logger.debug("Started") for line in iter(stderr.readline, b''): self.logger.error("FIO Error: %s", line.rstrip()) + self.stderr.append(line.rstrip()) # Sometime, FIO gets stuck and will give us this message: # fio: job 'sequential_read' hasn't exited in 60 seconds, @@ -125,6 +127,9 @@ class FIOInvoker(object): self.logger.debug("Joining stdout handler") tout.join() self.logger.debug("Ended") + if exit_status != 0: + return self.stderr + return None def terminate(self): self.logger.debug("Terminating fio on " + self.remote_host) |