日志功能可以说是相当常用的功能,本文旨在概述日志功能如何统合到框架中。(才不是为了打发训练模型的时间)
1 为什么要使用添加日志功能
能够方便的对程序进行调试
能够记录程序的运行状态,包括错误
2 日志模块的简单说明
日志的等级
import logging
# 日志的五个等级,等级依次递增
# 默认是WARNING等级
logging.DEBUG
logging.INFO
logging.WARNING
logging.ERROR
logging.CRITICAL
# 设置日志等级
logging.basicConfig(level=logging.INFO)
# 使用
logging.debug('DEBUG')
logging.info('INFO')
logging.warning('WARNING')
logging.error('ERROR')
logging.critical('CRITICAL')
捕获异常信息到日志
try:
raise Exception("异常")
except Exception as e:
logging.exception(e)
只有使用这种格式才能打命令行打印出报错的代码位置
日志的输出格式
通常可以自定义日志的输出内容和输出时间,输出内容要用format格式,时间要用datefmt格式
format格式说明
%(name)s Logger的名字
%(levelno)s 数字形式的日志级别
%(levelname)s 文本形式的日志级别
%(pathname)s 调用日志输出函数的模块的完整路径名,可能没有
%(filename)s 调用日志输出函数的模块的文件名
%(module)s 调用日志输出函数的模块名
%(funcName)s 调用日志输出函