From b25010973611beac5ac518e4a3e9e6d821e85428 Mon Sep 17 00:00:00 2001 From: overcuriousity Date: Fri, 12 Sep 2025 14:37:10 +0200 Subject: [PATCH] fix attempt --- core/logger.py | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/core/logger.py b/core/logger.py index 784bfa0..19c850f 100644 --- a/core/logger.py +++ b/core/logger.py @@ -79,7 +79,27 @@ class ForensicLogger: console_handler = logging.StreamHandler() console_handler.setFormatter(formatter) self.logger.addHandler(console_handler) - + + def __getstate__(self): + state = self.__dict__.copy() + # Exclude the unpickleable 'logger' attribute + if 'logger' in state: + del state['logger'] + return state + + def __setstate__(self, state): + self.__dict__.update(state) + # Re-initialize the 'logger' attribute + self.logger = logging.getLogger(f'dnsrecon.{self.session_id}') + self.logger.setLevel(logging.INFO) + formatter = logging.Formatter( + '%(asctime)s - %(name)s - %(levelname)s - %(message)s' + ) + if not self.logger.handlers: + console_handler = logging.StreamHandler() + console_handler.setFormatter(formatter) + self.logger.addHandler(console_handler) + def _generate_session_id(self) -> str: """Generate unique session identifier.""" return f"dnsrecon_{datetime.now(timezone.utc).strftime('%Y%m%d_%H%M%S')}"