Python logging模块

日志级别

 logging  Level    
debug 一级 级别小于三级默认不输出   
info 二级 级别小于三级默认不输出   
warning 三级 默认级别  
error 四级    
critical 五级    

 

 

 

 

 

 

 

 

一:

  普通logging设置,只能满足文件输出或屏幕输出两种方法之一;

import logging



logging.basicConfig(
    
    level=logging.DEBUG, # 设置日志级别
    filename='logging.log', # 设置日志输出文件
    filemode='w', # 设置文件写模式
    format='%(asctime)s  %(filename)s   %(lineno)d    %(message)s' # 设置日志输出格式

)


logging.debug('debug msg')
logging.info('info msg')
logging.warning('warning msg')
logging.error('error msg')
logging.critical('critical msg')

 

二:

  对象logging设置,可满足文件输出和屏幕输出

  

import logging



logger=logging.getLogger()

fh=logging.FileHandler('testing.log','w')# 获取文件输出对象
ch=logging.StreamHandler() # 获取屏幕输出对象
fm=logging.Formatter( '%(asctime)s  %(filename)s   %(lineno)d    %(message)s')

fh.setFormatter(fm) 
ch.setFormatter(fm)

logger.addHandler(fh)
logger.addHandler(ch)
logger.setLevel('DEBUG')


logger.debug('debug msg')
logger.info('info msg')
logger.warning('warning msg')
logger.error('error msg')
logger.critical('critical msg')


# 转为函数
def myLogger():
    
    logger=logging.getLogger()

    fh=logging.FileHandler('testing.log','w')
    ch=logging.StreamHandler()
    fm=logging.Formatter( '%(asctime)s  %(filename)s   %(lineno)d    %(message)s')

    fh.setFormatter(fm)
    ch.setFormatter(fm)

    logger.addHandler(fh)
    logger.addHandler(ch)
    logger.setLevel('DEBUG')

    return logger
    

 

posted @ 2020-10-15 16:57  leungqingyun  阅读(66)  评论(0)    收藏  举报