56
56
return config, base
59
def setup_logging(config):
59
def setup_logging(config, init_logging=True, log_file=None):
61
60
log_level = config.get_log_level()
62
logging.getLogger('').setLevel(log_level)
63
if log_level is not None:
64
logging.getLogger('').setLevel(log_level)
63
65
logger = logging.getLogger('loggerhead')
64
logger.setLevel(log_level)
65
if config.get_option('log_folder'):
66
logfile_path = os.path.join(
67
config.get_option('log_folder'), 'serve-branches.log')
66
if log_level is not None:
67
logger.setLevel(log_level)
68
if log_file is not None:
69
handler = logging.StreamHandler(log_file)
69
logfile_path = 'serve-branches.log'
70
logfile = logging.FileHandler(logfile_path, 'a')
71
if config.get_option('log_folder'):
72
logfile_path = os.path.join(
73
config.get_option('log_folder'), 'serve-branches.log')
75
logfile_path = 'serve-branches.log'
76
handler = logging.FileHandler(logfile_path, 'a')
71
77
formatter = logging.Formatter('%(asctime)s %(levelname)-8s %(name)s:'
73
logfile.setFormatter(formatter)
74
logfile.setLevel(logging.DEBUG)
75
logger.addHandler(logfile)
79
handler.setFormatter(formatter)
80
# We set the handler to accept all messages, the *logger* won't emit them
81
# if it is configured to suppress it
82
handler.setLevel(logging.DEBUG)
83
logger.addHandler(handler)
76
84
def _restrict_logging(logger_name):
77
85
logger = logging.getLogger(logger_name)
78
86
if logger.getEffectiveLevel() < logging.INFO: