loggin 模块及其单例模式

时间:2019-04-15
本文章向大家介绍loggin 模块及其单例模式,主要包括loggin 模块及其单例模式使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1. loggin模块的5个级别:

# logging.debug('debug message')      # 调试
# logging.info('info message')        # 普通信息
# logging.warning('warning message')  # 警告
# logging.error('error message')      # 错误信息
# logging.critical('critical message')# 严重错误

# 默认情况下 不打印warning以下级别的信息
View Code

2. loggin模块的简单使用

logging.basicConfig(level=logging.DEBUG,
                     format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
                     datefmt='%a, %d %b %Y %H:%M:%S')
View Code

 此方法的缺点:

   1.中文显示乱码
   2.不能同时输出到文件和屏幕

3.logger对象的方式来使用logging模块
import logging


logger = logging.getLogger()   # 首先 先创建logger对象
logger.setLevel(logging.DEBUG)  #设置显示级别

fh = logging.FileHandler('log',encoding='utf-8')# 第二 创建一个文件操作符


sh = logging.StreamHandler()# 第三 创建一个屏幕操作符


fmt = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')# 第四 创建一个格式


logger.addHandler(fh)#第五 logger 绑定 文件操作符

logger.addHandler(sh)#第六 logger 绑定 屏幕操作符

fh.setFormatter(fmt)#第七 文件操作符 绑定格式

sh.setFormatter(fmt)#第八 屏幕操作符 绑定格式

logger.debug('logger debug message')
logger.info('logger info message')
logger.warning('logger warning message')
logger.error('logger error message')
logger.critical('logger critical message')
View Code