def setup_console_logging(verbosity_level):
if verbosity_level < min(LOG_LEVELS.keys()):
verbosity_level = min(LOG_LEVELS.keys())
if verbosity_level > max(LOG_LEVELS.keys()):
verbosity_level = max(LOG_LEVELS.keys())
# loglevels = config.get('loglevels', {})
loglevels = {}
has_debug_loglevels = any([
level < logging.INFO for level in loglevels.values()])
verbosity_filter = VerbosityFilter(verbosity_level, loglevels)
if verbosity_level < 1 and not has_debug_loglevels:
log_format = "%(levelname)-8s %(message)s"
else:
# log_format = "(%(threadName)-9s) %(log_color)s%(levelname)-8s%(reset)s (%(funcName)-5s) %(message_log_color)s%(message)s"
log_format = "%(levelname)-8s %(asctime)s [%(process)d:%(threadName)s] %(name)s\n %(message)s"
# source: Logging Cookbook — Python 3.6.0 documentation
# log_format = "%(asctime)-15s %(name)-5s %(levelname)-8s IP: %(ip)-15s User: %(user)-8s %(message)s"
formatter = logging.Formatter(log_format)
# if config['logging']['color']:
# handler = ColorizingStreamHandler({})
# else:
# handler = logging.StreamHandler()
handler = ColorizingStreamHandler({})
handler.addFilter(verbosity_filter)
handler.setFormatter(formatter)
logging.getLogger('').addHandler(handler)
# def setup_debug_logging_to_file(config):
# formatter = logging.Formatter(config['logging']['debug_format'])
# handler = logging.handlers.RotatingFileHandler(
# config['logging']['debug_file'], maxBytes=10485760, backupCount=3)
# handler.setFormatter(formatter)
#
# logging.getLogger('').addHandler(handler)
评论列表
文章目录