前言:
作者简介:短尾巴小鳄鱼 ,一位不放弃自己的上进卷妹
💬 如果文章知识点有错误的地方,请留言指正~和大家一起学习,一起进步
💬 人生格言:昨日种种,皆成今我。今日种种,方成新我。切莫踌躇,莫停留,莫沉溺💬
如果感觉博主的文章还不错的话,还请关注、点赞、收藏三连支持一下博主哦
python中的日志模块
日志的作用
日志模块也是使用率很高的模块
记录日志可以快速的定位程序中哪里出了问题并修复BUG
日志也可以记录程序的运行状态,比如运行了多长时间,运行到了哪里
日志的等级
日志的等级由低到高:
debug–debug
info–普通的日志信息
warning–警告
error–程序错误
critical–重大程序错误
logging模块
这里只介绍下logging模块的basicConfig,这个函数能满足我们基础的日志记录需求
函数 | 参数 | 作用 | 例子 |
---|---|---|---|
basicConfig | level | 日志输出等级 | level=logging.DEBUG |
basicConfig | format | 日志输出格式 | |
basicConfig | filename | 存储位置 | filename= ‘D://back.log’ |
basicConfig | filemode | 输入模式 | filemode=‘w’ |
详细说明:
第一个参数level,代表日志输出等级;如果日志等级为info,则info等级及高于info等级的日志都会被记录
第二个参数format,代表日志输出格式;具体格式下面介绍
第三个参数filename,代表日志文件的存储位置;如果想要把日志记录在文件里需要定义这个参数
第四个参数filemode,代表日志的输入模式;定义了filename则需要定义filemode,一般情况下定义为w
就可以了
format的具体格式
格式符 | 含义 |
---|---|
%(levelname)s | 当前日志的级别名称,如debug、info等 |
%(pathname)s | 当前执行程序的路径 |
%(filename)s | 当前执行py脚本的文件名 |
%(lineno)d | 当前执行的py脚本所在的行数(d代表数字类型) |
%(asctime)s | 打印日志的时间 |
%(message)s | 日志输出的具体信息(最重要) |
常用的日志输出格式:
format='%(asctime)s%(filename)s[line:%(lineno)d]%(levelname)s%(message)s'
即:打印时间 程序文件名 [行号] 日志级别 具体信息
看这行日志就可以知道,什么时间在哪个程序文件中的第几行,出现了什么等级的错误,以及错误的具体信息
例子:
实际开发中应用logging记录日志:
生成的日志文件: