From 5d9ad13b0fa24b41e85241850da362b1a0006aba Mon Sep 17 00:00:00 2001 From: Peter Barker Date: Wed, 10 Jul 2024 11:21:13 +1000 Subject: [PATCH] mp_module.py: add convenience print_caught_exception --- MAVProxy/modules/lib/mp_module.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/MAVProxy/modules/lib/mp_module.py b/MAVProxy/modules/lib/mp_module.py index 943e52788a..e3c5533abb 100644 --- a/MAVProxy/modules/lib/mp_module.py +++ b/MAVProxy/modules/lib/mp_module.py @@ -1,5 +1,6 @@ import time from pymavlink import mavutil +import traceback class MPModule(object): ''' @@ -254,4 +255,15 @@ def send_named_float(self, name, value): self.named_float_seq = (self.named_float_seq+1) % 256 m.name = name self.mpstate.module('link').master_callback(m, self.master) - + + def get_exception_stacktrace(self, e): + if sys.version_info[0] >= 3: + ret = "%s\n" % e + ret += ''.join(traceback.format_exception(type(e), + e, + tb=e.__traceback__)) + return ret + return traceback.format_exc(e) + + def print_caught_exception(self, e): + print(self.get_exception_stacktrace(e))