Miaode's picture
Add files using upload-large-folder tool
8499730 verified
import logging
import colorlog
# 自定义日志等级
SUCCESS_LEVEL_NUM = 25
logging.addLevelName(SUCCESS_LEVEL_NUM, "SUCCESS")
def success(self, message, *args, **kwargs):
if self.isEnabledFor(SUCCESS_LEVEL_NUM):
self._log(SUCCESS_LEVEL_NUM, message, args, **kwargs)
logging.Logger.success = success # 添加方法到 Logger 类
def get_logger(level=logging.INFO) -> logging.Logger:
# 创建logger对象
logger = logging.getLogger("DataFlow")
if not logger.handlers:
logger.setLevel(level)
# 创建控制台日志处理器
console_handler = logging.StreamHandler()
console_handler.setLevel(level)
# 定义颜色输出格式
color_formatter = colorlog.ColoredFormatter(
'%(log_color)s %(asctime)s | %(filename)-20s- %(module)-20s- %(funcName)-20s- %(lineno)5d - %(name)-10s | %(levelname)8s | Processno %(process)5d - Threadno %(thread)-15d : %(message)s',
log_colors={
'DEBUG': 'cyan',
# 'INFO': 'white',
'SUCCESS': 'green',
'WARNING': 'yellow',
'ERROR': 'red',
'CRITICAL': 'red,bg_white',
}
)
# 将颜色输出格式添加到控制台日志处理器
console_handler.setFormatter(color_formatter)
# 将控制台日志处理器添加到logger对象
logger.addHandler(console_handler)
return logger