summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRoss Burton <ross@burtonini.com>2021-10-14 17:33:18 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-10-17 12:14:29 +0100
commit2f1ea25c222b344dd8b784b2bc73a6540ab30274 (patch)
tree92e117a297f8649aaec6b8b99881f5b4f9d877b7
parent9a9cd95fcc792b1daf71d75aa61488611e9490ce (diff)
downloadopenembedded-core-2f1ea25c222b344dd8b784b2bc73a6540ab30274.tar.gz
oe/utils: log exceptions in ThreadedWorker functions
If the function a ThreadedWorker is executing raises an exception, don't use print() as that mostly disappears. Instead, output it to the logger. This is done using bb.mainlogger.debug directly instead of bb.debug() as this allows us to pass the exception instance directly, which is then incorporated into the log stream. Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/lib/oe/utils.py3
1 files changed, 2 insertions, 1 deletions
diff --git a/meta/lib/oe/utils.py b/meta/lib/oe/utils.py
index 238af314d1..cf65639647 100644
--- a/meta/lib/oe/utils.py
+++ b/meta/lib/oe/utils.py
@@ -508,7 +508,8 @@ class ThreadedWorker(Thread):
try:
func(self, *args, **kargs)
except Exception as e:
- print(e)
+ # Eat all exceptions
+ bb.mainlogger.debug("Worker task raised %s" % e, exc_info=e)
finally:
self.tasks.task_done()