Python使用logging记录日志
日志文件logger.py存放在文件夹logs下
import logging # 引入logging模块
import os.path
from datetime import datetime
# 第一步,创建一个logger
logger = logging.getLogger()
logger.setLevel(logging.INFO) # Log等级总开关
# 第二步,创建一个handler,用于写入日志文件
rq = datetime.now().strftime("%Y%m%d")[:None] #获取当天的日期,在logs文件夹下每天生成一个日志文件
log_path = os.path.dirname(os.getcwd()) + '/logs/'
log_name = log_path + rq + '.log'
logfile = log_name
fh = logging.FileHandler(logfile, encoding="utf-8", mode='a+') # mode的使用见以下Python文件读写
fh.setLevel(logging.DEBUG) # 输出到file的log等级的开关
# 第三步,定义handler的输出格式
formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")
fh.setFormatter(formatter)
# 第四步,将logger添加到handler里面
logger.addHandler(fh)
# 日志
def info(msg):
logger.info(msg)
def debug(msg):
logger.debug(msg)
def warning(msg):
logger.warning(msg)
def error(msg):
logger.error(msg)
def critical(msg):
logger.critical(msg)
在需要记录日志的文件from logs import logger
,然后直接调用相关日志方法即可
需要记录日志的文件Data.py
from logs import logger
class Data:
def __init__(self):
self.driver = webdriver.Firefox()
logger.info('__init__')
def Run(self):
logger.info('__Run__')
if __name__ == "__main__":
dt = Data()
dt.Run()
python 文件读写