diff options
Diffstat (limited to 'bitbake/lib/bb/ui/toasterui.py')
-rw-r--r-- | bitbake/lib/bb/ui/toasterui.py | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/bitbake/lib/bb/ui/toasterui.py b/bitbake/lib/bb/ui/toasterui.py index df9f362284..db119cea67 100644 --- a/bitbake/lib/bb/ui/toasterui.py +++ b/bitbake/lib/bb/ui/toasterui.py @@ -327,9 +327,17 @@ def main(server, eventHandler, params ): except Exception as e: # print errors to log import traceback + from pprint import pformat exception_data = traceback.format_exc() logger.error("%s\n%s" % (e, exception_data)) + exc_type, exc_value, tb = sys.exc_info() + if tb is not None: + curr = tb + while curr is not None: + logger.warn("Error data dump %s\n%s\n" % (traceback.format_tb(curr,1), pformat(curr.tb_frame.f_locals))) + curr = curr.tb_next + # save them to database, if possible; if it fails, we already logged to console. try: buildinfohelper.store_log_exception("%s\n%s" % (str(e), exception_data)) |