import os
import logging
from logging import handlers
import sys
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
LOG_ROOT = os.path.dirname(os.path.abspath('.')) + '/log'
#输出日志到控制台
def get_logger(level=logging.DEBUG):
logger = logging.getLogger()
logger.setLevel(level)
# log输出格式
formatter = logging.Formatter('%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s')
# 输出到控制台
ch = logging.StreamHandler()
ch.setLevel(level)
# 设置日志输出格式
ch.setFormatter(formatter)
# 添加到logger对象里
logger.addHandler(ch)
return logger
#输出日志到日志文件
def get_logger_to_logtxt(log_filename, level=logging.DEBUG, back_count=1):
logger = logging.getLogger(log_filename)
logger.setLevel(level)
log_path = os.path.join(LOG_ROOT, "logs")
if not os.path.exists(log_path):
os.mkdir(log_path)
log_file_path = os.path.join(log_path, log_filename)
# log输出格式
formatter = logging.Formatter('%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s')
# 输出到文件
fh = logging.handlers.TimedRotatingFileHandler(
filename=log_file_path,
backupCount=back_count,
encoding='utf-8')
fh.setLevel(level)
# 设置日志输出格式
fh.setFormatter(formatter)
# 添加到logger对象里
logger.addHandler(fh)
return logger
Python Log封装
最新推荐文章于 2024-02-21 19:14:58 发布