summaryrefslogtreecommitdiff
path: root/tests/topotests/lib/topolog.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/topotests/lib/topolog.py')
-rw-r--r--tests/topotests/lib/topolog.py28
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
#