屏幕输出日志
import logging
logging.debug('debug')
logging.info('info')
logging.warning('warning')
logging.error('error')
logging.critical('critical')
文件输出日志
import logging
logging.basicConfig(#日志水平
level=logging.INFO,
#日志输出格式
format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
datefmt='%Y-%m-%d %H:%M:%S', #日期格式
filename='test.log', #文件地址
filemode='a')
logging.debug('debug')
logging.info('info')
logging.warning('warning')
logging.error('error')
logging.critical('critical')
屏幕和文件同时输出
import logging
def get_logger():
# 创建日志对象
log_obj = logging.getLogger('日志')
# 设置日志水平
log_obj.setLevel(logging.DEBUG)
# 创建控制台句柄
sh = logging.StreamHandler()
# 创建文件句柄
fh = logging.FileHandler('test.log')
# 创建格式对象
log_format = logging.Formatter('%(asctime)s %(name)s %(levelname)s %(message)s')
# 设置句柄格式
sh.setFormatter(log_format)
fh.setFormatter(log_format)
# 添加句柄到日志对象
log_obj.addHandler(sh)
log_obj.addHandler(fh)
# 返回日志对象
return log_obj
log = get_logger()
log.info('haha')