def create_logger(logger_name):
# create logger
logger = logging.getLogger(logger_name)
logger.log_except = method_type(log_traceback_hook, logger) # add a method to logger
logger.setLevel(LoggerManager.log_level)
# create handler
if LoggerManager.log_handler == HANDLER_SYSLOG:
if platform.system() == 'Linux':
handler = LH.SysLogHandler(SYSLOG_ADDRESS, facility=SYSLOG_FACILITY)
else: # Windows, Mac
handler = logging.FileHandler(LoggerManager.get_filename(), encoding='utf8')
elif LoggerManager.log_handler == HANDLER_FILE:
handler = logging.FileHandler(LoggerManager.get_filename(), encoding='utf8')
elif LoggerManager.log_handler == HANDLER_CUSTOME:
handler = LoggerManager.custom_handler()
else:
handler = logging.StreamHandler()
# create formatter
fmt = FORMATTER.replace('%(tag)s', LoggerManager.log_tag)
formatter = logging.Formatter(fmt)
handler.setFormatter(formatter)
handler.setLevel(LoggerManager.log_level)
logger.addHandler(handler)
LoggerManager.created_loggers.add(logger_name)
评论列表
文章目录