Python全栈开发——日志模块

import logging
#设优先级,输出日志为文本等信息
logging.basicConfig(
    level=logging.DEBUG,  #设置优先级
    filename='logger.txt' , #设置输出文本,默认为追加模式
    filemode='w',           #设置写入文本的模式
    format='%(asctime)s [%(lineno)d] %(message)s' , #显示时间等格式,格式为  %()s
    #有许多格式,上面的常用
)

#日志级别,从低到高,默认是   warning
logging.debug('Debug')
logging.info('info')                #没设优先级打印的内容
logging.warning('warning')         # WARNING:root:warning
logging.error('error')             #ERROR:root:error
logging.critical('critical')       #CRITICAL:root:critical
#注意:上面的信息只能打印在文本中

#既能输出在文本中,又能输出在运行结果中
def logger():
    logger=logging.getLogger()

    fh=logging.FileHandler('lujiacheng.txt')      #向文件lujiacheng.txt发送日志内容
    ch=logging.StreamHandler()    #向运行结果中打印信息

    fm=logging.Formatter('%(asctime)s  %(message)s')  #设置打印格式

    fh.setFormatter(fm)                 #绑定格式
    ch.setFormatter(fm)

    logger.addHandler(fh)        #绑定
    logger.addHandler(ch)

    return logger
#上面的设置logger,可封装成一个函数

logger=logger()
logger.setLevel(logging.DEBUG)  #设置级别

#日志级别,从低到高,默认是   warning
logging.debug('Debug')
logging.info('info')                #没设优先级打印的内容
logging.warning('warning')         # WARNING:root:warning
logging.error('error')             #ERROR:root:error
logging.critical('critical')       #CRITICAL:root:critical
原文地址:https://www.cnblogs.com/lujiacheng-Python/p/9733829.html