From a6d3e5841fcb83709c1beae554d03d3b52796c77 Mon Sep 17 00:00:00 2001 From: jMyles Date: Fri, 8 Nov 2019 22:58:12 -0800 Subject: [PATCH] Need a way to pause all logging for massive Ursula tests. --- nucypher/network/nodes.py | 2 ++ nucypher/utilities/logging.py | 10 ++++++++++ 2 files changed, 12 insertions(+) diff --git a/nucypher/network/nodes.py b/nucypher/network/nodes.py index 6a84abdf6..653b24479 100644 --- a/nucypher/network/nodes.py +++ b/nucypher/network/nodes.py @@ -433,6 +433,8 @@ class Learner: # In some cases (seed nodes or other temp stored certs), # this will update the filepath from the temp location to this one. node.certificate_filepath = certificate_filepath + + self.log.info(f"Saved TLS certificate for {node.nickname}: {certificate_filepath}") try: diff --git a/nucypher/utilities/logging.py b/nucypher/utilities/logging.py index da6223256..cba634022 100644 --- a/nucypher/utilities/logging.py +++ b/nucypher/utilities/logging.py @@ -95,6 +95,16 @@ class GlobalLoggerSettings: if was_already_going: globalLogPublisher.addObserver(console_observer) + @classmethod + @contextmanager + def pause_all_logging_while(cls): + former_observers = tuple(globalLogPublisher._observers) + for observer in former_observers: + globalLogPublisher.removeObserver(observer) + yield + for observer in former_observers: + globalLogPublisher.addObserver(observer) + @classmethod def start_text_file_logging(cls): globalLogPublisher.addObserver(get_text_file_observer())