[rp-reporter] Cut logs into parts with traceback
Fix nested suite creating
Related-Prod: PRODX-48948
Change-Id: I14459d68a50c133b7788eb28e2540fd7c5e401e1
diff --git a/rp_reporter/rp_reporter/report_from_xml.py b/rp_reporter/rp_reporter/report_from_xml.py
index a5cb6ab..7fe079b 100644
--- a/rp_reporter/rp_reporter/report_from_xml.py
+++ b/rp_reporter/rp_reporter/report_from_xml.py
@@ -232,18 +232,22 @@
case _:
raise BaseException(f"Unknown {tc.result=} in xml")
- # LOG.debug(f"Logging {tc.trace}")
- # ipdb.set_trace()
if tc.message:
self.client.log(time=timestamp(),
message=tc.message,
item_id=item_id
)
if tc.trace:
- self.client.log(time=timestamp(),
- message=tc.trace,
- item_id=item_id
- )
+ delimiter = "Traceback (most recent call last):"
+ for n, log in enumerate(tc.trace.split(delimiter)):
+ # All Traceback will be reporter as ERROR
+ message = delimiter+log if n else log
+ level = "ERROR" if n else "INFO"
+ self.client.log(time=timestamp(),
+ message=message,
+ level=level,
+ item_id=item_id
+ )
# timestamp() 1739905243451 in milliseconds
# tc.time datetime.timedelta(microseconds=259000)
@@ -256,8 +260,7 @@
end_time=str(end_time_in_milliseconds),
status=status,
)
- self.finish_all()
-
+ self.finish_all()
if not to_specific_launch:
self.client.finish_launch(end_time=timestamp())
LOG.info(self.client.get_launch_info())