From fd7e04e768be9caca7e2f04c2d4d73d7cf6148a1 Mon Sep 17 00:00:00 2001 From: Ryan SVIHLA Date: Wed, 26 May 2021 13:12:16 +0200 Subject: [PATCH] Statuslogger not handling unparseable logs correctly (#66) * handle missing start and end more gracefully in statuslogger * better handling of unparseable logs --- pysper/core/statuslogger.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/pysper/core/statuslogger.py b/pysper/core/statuslogger.py index 2b389eb..b7266ea 100644 --- a/pysper/core/statuslogger.py +++ b/pysper/core/statuslogger.py @@ -96,9 +96,16 @@ def __init__(self, nodes): print(nodes) self.nodes = nodes if nodes: - self.start = min([n.start for n in nodes.values() if n.start]) - self.end = max([n.end for n in nodes.values() if n.end]) - self.duration = self.end - self.start + start_times = [n.start for n in nodes.values() if n.start] + if len(start_times) > 0: + self.start = min(start_times) + end_times = [n.end for n in nodes.values() if n.end] + if len(end_times) > 0: + self.end = max(end_times) + if hasattr(self, "end") and hasattr(self, "start"): + self.duration = self.end - self.start + else: + self.start, self.end, self.duration = 0, 0, 0 else: self.start, self.end, self.duration = 0, 0, 0 self.lines = sum([n.lines for n in nodes.values()])