web自动化之 日志类封装

# 日志类
import logging
from common import contants

class Log:
def __init__(self):
#创建日志收集器
self.logger = logging.getLogger('new_logger')
self.logger.setLevel('DEBUG')

#定义输入渠道
fh = logging.FileHandler(contants.case_log, mode='a', encoding='utf-8') #日志输出到文件
ch = logging.StreamHandler()

#定义日志输出级别
fh.setLevel('INFO')
ch.setLevel('ERROR')

#定义输出格式
formatter = logging.Formatter('%(asctime)s - %(filename)s - %(name)s - %(levelname)s - 日志信息: %(message)s')
fh.setFormatter(formatter)
ch.setFormatter(formatter)

#日志器对接渠道
self.logger.addHandler(fh)
self.logger.addHandler(ch)

def get_log(self, level, msg):

if level == 'DEBUG':
self.logger.debug(msg)
elif level == 'INFO':
self.logger.info(msg)
elif level == 'WARNING':
self.logger.warning(msg)
elif level == 'ERROR':
self.logger.error(msg)
elif level == 'CRITICAL':
self.logger.critical(msg)

def log_debug(self, msg):
return self.get_log('DEBUG', msg)

def log_info(self, msg):
return self.get_log('INFO', msg)

def log_warning(self, msg):
return self.get_log('WARNING', msg)

def log_error(self, msg):
return self.get_log('ERROR', msg)

def log_critical(self, msg):
return self.get_log('CRITICAL', msg)

if __name__=='__main__':
log = Log()
log.log_debug('这是debug信息')
log.log_info('这是info信息')
log.log_warning('这是waring信息')
log.log_error('这是error信息')
log.log_critical('这是critical信息')


猜你喜欢

转载自www.cnblogs.com/sophia-985935365/p/12640023.html