diff options
author | Joshua Watt <JPEWhacker@gmail.com> | 2023-11-10 08:50:09 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-11-14 23:39:51 +0000 |
commit | 61dac7b99ad6d2a858f85d8ed1b5524d558be6c8 (patch) | |
tree | 70cf2f3f1cde0749c37f027ae7399ae1b266455e | |
parent | 89df63d967dd3091fba7943f5fe5a98e2c3871e3 (diff) | |
download | bitbake-61dac7b99ad6d2a858f85d8ed1b5524d558be6c8.tar.gz |
asyncrpc: Add option to set log level when running as a process
When running an asyncrpc server as a subprocess, it is often desired to
run it with a lower logging level since the normal logging of clients
connecting and disconnecting is not desired.
As such, add an option to set the logging level of the server when
running as a subprocess and set the level to WARNING when starting a
local hashserver or PRserver
Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
-rw-r--r-- | lib/bb/asyncrpc/serv.py | 5 | ||||
-rw-r--r-- | lib/bb/cooker.py | 2 | ||||
-rw-r--r-- | lib/prserv/serv.py | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/lib/bb/asyncrpc/serv.py b/lib/bb/asyncrpc/serv.py index 5fed1730d..f0be9a6cd 100644 --- a/lib/bb/asyncrpc/serv.py +++ b/lib/bb/asyncrpc/serv.py @@ -322,7 +322,7 @@ class AsyncServer(object): self.loop = asyncio.new_event_loop() asyncio.set_event_loop(self.loop) - def serve_as_process(self, *, prefunc=None, args=()): + def serve_as_process(self, *, prefunc=None, args=(), log_level=None): """ Serve requests in a child process """ @@ -351,6 +351,9 @@ class AsyncServer(object): if prefunc is not None: prefunc(self, *args) + if log_level is not None: + self.logger.setLevel(log_level) + self._serve_forever(tasks) if sys.version_info >= (3, 6): diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py index 9a3e32ac1..4bf1809bc 100644 --- a/lib/bb/cooker.py +++ b/lib/bb/cooker.py @@ -345,7 +345,7 @@ class BBCooker: sync=False, upstream=upstream, ) - self.hashserv.serve_as_process() + self.hashserv.serve_as_process(log_level=logging.WARNING) for mc in self.databuilder.mcdata: self.databuilder.mcorigdata[mc].setVar("BB_HASHSERVE", self.hashservaddr) self.databuilder.mcdata[mc].setVar("BB_HASHSERVE", self.hashservaddr) diff --git a/lib/prserv/serv.py b/lib/prserv/serv.py index 6168eb183..62d3b5a01 100644 --- a/lib/prserv/serv.py +++ b/lib/prserv/serv.py @@ -130,7 +130,7 @@ class PRServSingleton(object): def start(self): self.prserv = PRServer(self.dbfile) self.prserv.start_tcp_server(socket.gethostbyname(self.host), self.port) - self.process = self.prserv.serve_as_process() + self.process = self.prserv.serve_as_process(log_level=logging.WARNING) if not self.prserv.address: raise PRServiceConfigError |