通过logging.config模块配置日志
#logger.conf
[loggers] ;设置日志记录器 :根目录,简单实例量种类型的日志
keys=root,simpleExample
[handlers] ;设置日志处理器:控制台处理,文件处理
keys=consoleHandler,fileHandler
[formatters] ;设置格式化器:
keys=simpleFormatter
[logger_root] ;根部日志记录器,从debug开始,日志处理器为文件处理
level=DEBUG
handlers=fileHandler
[logger_simpleExample] ;简单实例日志记录器,从debug开始,日志处理器为控制台处理及文件处理
level=DEBUG
handlers=consoleHandler,fileHandler
qualname=simpleExample
propagate=0
[handler_consoleHandler] ;控制台处理:字符串输出,从WARNING开始,标准化输出
class=StreamHandler
level=WARNING
formatter=simpleFormatter
args=(sys.stdout,)
[handler_fileHandler] ;控制台处理:文件输出,日志回滚方式,从DEBUG开始,以追加方式输出到test,最多备份10个日志文件,每个日志文件最大20M
class=handlers.RotatingFileHandler
level=DEBUG
formatter=simpleFormatter
args=('test.log','a+',20*1024*1024,10) ;最多备份10个日志文件,每个日志文件最大20M
#
[formatter_simpleFormatter]
format=%(asctime)s - %(name)s - %(levelname)s - %(message)s
datefmt=
#配置文件时
import logging
import logging.config
logging.config.fileConfig('logging.ini')
#通过logging.basicConfig函数对日志的输出格式及方式做相关配置
import logging
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',
filename='myapp.log',
filemode='w')
logging.debug('This is debug message')
logging.info('This is info message')
logging.warning('This is warning message')