六、logging

一、 logging的五大模块

logging一般分为五大模块:debug、info、warning、error、critical
这些级别本身没有代表信息重要性的区别,只是包含级别信息,可以约定日志的重要性

logging.info('info')                       #10
logging.debug('debug')                     #20
logging.warning('warning')                 #30
logging.error('error')                     #40
logging.critical('critical')               #50

二、 标准三流

标准输入流 sys.stdin                   input的底层
标准输出流 sys.stdout                 print的底层
标准错误流 sys.stderr                  异常及logging默认打印方式的底层

三、logging的基本配置

logging配置:格式化输出
1)输出的方式
2)输出的格式
3)输出的位置

logging为默认打印者,名字叫做root。基本配置
logging.StreamHandler() :输出到终端
logging.FileHandler('d.log') 输出到文件
logging.basicConfig() 在括号里面填入一些配置
如: 
  stream = sys.stderr, 往控制台打印采用具体的输出流 ,只能往一个地方,要么文件,要么控制台
  format:打印的格式
  datefmt:时间格式
  level = logging.DEBUG 代表打印DEBUG级别及以上都能输出

 

四、logging的四大成员

"""
1. logger对象   
logger = logging.getLogger("wangyong")  不写默认是root
2. filter 一种过滤规则
3. handler控制输出的位置句柄,如往文件1、文件2..控制台
logging.StreamHandler() :输出到终端
logging.FileHandler('d.log')  输出到文件
4.formater输出的格式
"""

# 1. 创建logger对象
logger = logging.getLogger("wangyong")  不写默认是root
# 2.创建句柄:输出的位置
stream_handler = logging.StreamHandler()
a_file_handler = logging.FileHandler('a.log')
b_file_handler = logging.FileHandler('b.log')
# 3.打印者绑定句柄
logger.addHandler(stream_handler)
logger.addHandler(a_file_handler)
logger.addHandler(b_file_handler)
# 4.设置格式
fmt1 = logging.Formatter('%(asctime)s - %(msg)s')
fmt2 = logging.Formatter('%(asctime)s [%(name)s] - %(msg)s')
# 5.为句柄绑定输出格式
stream_handler.setFormatter(fmt1)
a_file_handler.setFormatter(fmt1)
b_file_handler.setFormatter(fmt2)

 

posted on 2021-06-08 13:11  软饭攻城狮  阅读(310)  评论(0编辑  收藏  举报

导航