日志记录模块logging

发布时间:2019-04-09 21:44:47编辑:auto阅读(1889)

    在python中,日志记录显示有两种方式,一种是保存在文件和打印屏幕上,一种保存在文件中。

    第一种,直接保存在文件中。

     1 import logging  #日志模块,方便记录日志
     2 
     3 # 下面是配置日志记录格式
     4 logging.basicConfig(level=logging.DEBUG,   #(DEBUG这个可以换成其他级别,如WARNING,ERROR等)
     5                     format=' %(asctime)s >> %(filename)s >> line: %(lineno)d >> %(levelname)s >> %(message)s ',
     6                     datefmt='%Y_%m_%d %H:%M:%S',
     7                     filename='test.log',
     8                     filemode='a'
     9                     )   #这个w执行时,会把原有的内容清空,记录记录肯定是要保留所有记录,所以把w换成a,就可以增加内容
    10 
    11 # 如下为错误级别,依次级别增高
    12 logging.debug('debug message11,1223')
    13 logging.info('info message22')
    14 logging.warning('warning message22')
    15 logging.error('error message33')
    16 logging.critical('critical message44')

    第二种,同时保存在文件和打印输出

     1 import logging
     2 
     3 
     4 logger = logging.getLogger()
     5 
     6 #创建一个handler,用于写入日志文件
     7 fh = logging.FileHandler('test.log','a')
     8 #再创建一个handler,用于输出到屏幕
     9 ch = logging.StreamHandler()
    10 
    11 
    12 formt=logging.Formatter('%(asctime)s_%(filename)s_%(levelname)s_%(message)s')
    13 
    14 
    15 
    16 fh.setFormatter(formatter)
    17 ch.setFormatter(formatter)
    18 
    19 
    20 logger.addHandler(fh)
    21 logger.addHandler(ch)
    22 
    23 
    24 
    25 
    26 logger.setLevel(logging.DEBUG)
    27 
    28 
    29 
    30 logger.debug('debug message11')
    31 logger.info('info message22')
    32 logger.warning('warning message33')
    33 logger.error('error message44')
    34 logger.critical('critical message55')

     

关键字