diff options
Diffstat (limited to 'tests/topotests/lib/topolog.py')
| -rw-r--r-- | tests/topotests/lib/topolog.py | 28 |
1 files changed, 16 insertions, 12 deletions
diff --git a/tests/topotests/lib/topolog.py b/tests/topotests/lib/topolog.py index f149f34eb3..0dfa870930 100644 --- a/tests/topotests/lib/topolog.py +++ b/tests/topotests/lib/topolog.py @@ -31,22 +31,25 @@ import logging # Helper dictionary to convert Topogen logging levels to Python's logging. DEBUG_TOPO2LOGGING = { - 'debug': logging.DEBUG, - 'info': logging.INFO, - 'output': logging.INFO, - 'warning': logging.WARNING, - 'error': logging.ERROR, - 'critical': logging.CRITICAL, + "debug": logging.DEBUG, + "info": logging.INFO, + "output": logging.INFO, + "warning": logging.WARNING, + "error": logging.ERROR, + "critical": logging.CRITICAL, } + class InfoFilter(logging.Filter): def filter(self, rec): return rec.levelno in (logging.DEBUG, logging.INFO) + # # Logger class definition # + class Logger(object): """ Logger class that encapsulates logging functions, internaly it uses Python @@ -58,32 +61,32 @@ class Logger(object): def __init__(self): # Create default global logger self.log_level = logging.INFO - self.logger = logging.Logger('topolog', level=self.log_level) + self.logger = logging.Logger("topolog", level=self.log_level) handler_stdout = logging.StreamHandler(sys.stdout) handler_stdout.setLevel(logging.DEBUG) handler_stdout.addFilter(InfoFilter()) handler_stdout.setFormatter( - logging.Formatter(fmt='%(asctime)s %(levelname)s: %(message)s') + logging.Formatter(fmt="%(asctime)s %(levelname)s: %(message)s") ) handler_stderr = logging.StreamHandler() handler_stderr.setLevel(logging.WARNING) handler_stderr.setFormatter( - logging.Formatter(fmt='%(asctime)s %(levelname)s: %(message)s') + logging.Formatter(fmt="%(asctime)s %(levelname)s: %(message)s") ) self.logger.addHandler(handler_stdout) self.logger.addHandler(handler_stderr) # Handle more loggers - self.loggers = {'topolog': self.logger} + self.loggers = {"topolog": self.logger} def set_log_level(self, level): "Set the logging level" self.log_level = DEBUG_TOPO2LOGGING.get(level) self.logger.setLevel(self.log_level) - def get_logger(self, name='topolog', log_level=None, target=sys.stdout): + def get_logger(self, name="topolog", log_level=None, target=sys.stdout): """ Get a new logger entry. Allows creating different loggers for formating, filtering or handling (file, stream or stdout/stderr). @@ -100,12 +103,13 @@ class Logger(object): handler = logging.StreamHandler(stream=target) handler.setFormatter( - logging.Formatter(fmt='%(asctime)s %(levelname)s: %(message)s') + logging.Formatter(fmt="%(asctime)s %(levelname)s: %(message)s") ) nlogger.addHandler(handler) self.loggers[name] = nlogger return nlogger + # # Global variables # |
