def attach_duplicate_log_filter(logger: Logger) -> None: """ Attach the base scrapli logger DuplicateFilter filter to a provided logger Fails silently for now... forever? Args: logger: logger to attach the filter to Returns: N/A # noqa: DAR202 Raises: N/A """ base_logger = getLogger("scrapli") try: dup_filter = [ logging_filter.__class__ for logging_filter in base_logger.filters if logging_filter.__class__.__name__ == "DuplicateFilter" ][0] logger.addFilter(dup_filter()) except IndexError: pass
def test_thread_context_filter( log_store: MockLoggingHandler, logger: Logger, thread_context_filter: ThreadContextFilter, message: Any, expected_message: Any, ) -> None: logger.addHandler(log_store) logger.info(message) logger.addFilter(thread_context_filter) logger.info(message) logger.removeFilter(thread_context_filter) logger.info(message) logged_messages: List[str] = log_store.messages["info"] assert len(logged_messages) == 3 for i, logged_message in enumerate(logged_messages): try: logged_message = eval(logged_message) except NameError: pass if i == 1: # message affected with the thread context logger assert logged_message == expected_message else: # message before/after the thread context logger assert logged_message == message log_store.reset()
def init(logger: logging.Logger) -> 'VerediFilter': ''' Create and add the VerediFilter to the provided logger. ''' filter = VerediFilter() # Attach it to the logger... logger.addFilter(filter) # And done. return filter