mirror of
https://git.proxmox.com/git/mirror_frr
synced 2025-08-14 02:53:55 +00:00
lib: Change topology to output INFO and DEBUG to stdout and other levels to stderr
Previously, all logs were sent to stderr
This commit is contained in:
parent
c11c4cc7d3
commit
9427b78f65
@ -39,6 +39,10 @@ DEBUG_TOPO2LOGGING = {
|
|||||||
'critical': logging.CRITICAL,
|
'critical': logging.CRITICAL,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class InfoFilter(logging.Filter):
|
||||||
|
def filter(self, rec):
|
||||||
|
return rec.levelno in (logging.DEBUG, logging.INFO)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Logger class definition
|
# Logger class definition
|
||||||
#
|
#
|
||||||
@ -55,11 +59,21 @@ class Logger(object):
|
|||||||
# Create default global logger
|
# Create default global logger
|
||||||
self.log_level = logging.INFO
|
self.log_level = logging.INFO
|
||||||
self.logger = logging.Logger('topolog', level=self.log_level)
|
self.logger = logging.Logger('topolog', level=self.log_level)
|
||||||
handler = logging.StreamHandler()
|
|
||||||
handler.setFormatter(
|
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')
|
||||||
)
|
)
|
||||||
self.logger.addHandler(handler)
|
handler_stderr = logging.StreamHandler()
|
||||||
|
handler_stderr.setLevel(logging.WARNING)
|
||||||
|
handler_stderr.setFormatter(
|
||||||
|
logging.Formatter(fmt='%(asctime)s %(levelname)s: %(message)s')
|
||||||
|
)
|
||||||
|
|
||||||
|
self.logger.addHandler(handler_stdout)
|
||||||
|
self.logger.addHandler(handler_stderr)
|
||||||
|
|
||||||
# Handle more loggers
|
# Handle more loggers
|
||||||
self.loggers = {'topolog': self.logger}
|
self.loggers = {'topolog': self.logger}
|
||||||
|
Loading…
Reference in New Issue
Block a user