From b20ea2780ffbdaa5a5ae426d7b1681cbce151579 Mon Sep 17 00:00:00 2001 From: Ross Burton Date: Tue, 31 Jan 2023 16:30:22 +0000 Subject: httpserver: add error handler that write to the logger (From OE-Core rev: dcf1dfc053c058a5e03051320845e278b9f81b75) Signed-off-by: Ross Burton Signed-off-by: Richard Purdie (cherry picked from commit a4bcca3123685f410fc99e5cc23f2b8f39fd0a63) Signed-off-by: Steve Sakoman Signed-off-by: Richard Purdie --- meta/lib/oeqa/utils/httpserver.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'meta/lib/oeqa/utils/httpserver.py') diff --git a/meta/lib/oeqa/utils/httpserver.py b/meta/lib/oeqa/utils/httpserver.py index 58d3c3b3f8..0d602e2dfa 100644 --- a/meta/lib/oeqa/utils/httpserver.py +++ b/meta/lib/oeqa/utils/httpserver.py @@ -38,6 +38,12 @@ class HTTPService(object): self.port = self.server.server_port self.process = multiprocessing.Process(target=self.server.server_start, args=[self.root_dir, self.logger]) + def handle_error(self, request, client_address): + import traceback + exception = traceback.format_exc() + self.logger.warn("Exception when handling %s: %s" % (request, exception)) + self.server.handle_error = handle_error + # The signal handler from testimage.bbclass can cause deadlocks here # if the HTTPServer is terminated before it can restore the standard #signal behaviour -- cgit v1.2.3-54-g00ecf