Python自动化测试-生成日志-conf日志文件配置

为什么要生成日志

执行脚本时,我们通常希望能够生成相对应的日志,生成日志是为了方便执行完成后我们查看脚本的执行路径,有利于我们调试代码和定位问题。

日志文件就是通常我们理解的配置文件,主要有两种形式,一种是 ini 形式,另一种是 conf 形式。今天分享的是后者,也就是通过 conf 的配置文件来生成日志文件,我们可以把日志信息打印在显示控制台,也可以把日志信息保存在文件里,这样方便我们后期直接打开文件查看相应的日志信息,我们可以把常规的日志文件和有报错信息的日志文件区分开保存,如果有执行过程中有报错的话,我们可以直接通过保存的报错日志直接定位问题。

日志配置文件内容

日志的 conf 配置文件主要由 logger、handlers 日志文件、formatters 日志格式组成,详细配置内容如下,具体解释见下方。

 

日志配置文件详细分析

  1. loggers 部分 : 作用是配置 logger 信息。必须包含父类 root 的 logger,默认情况下,当使用无参函数 logging.getLogger() 时,就会默认返回 root 这个 logger,它的日志等级是 DEBUG,其他自定义 logge r可以通过 logging.getLogger(“infoLogger”) 方式进行调用。

  2. logger_xxx : 对 loggers 中 keys 里面声明的 logger 进行逐个配置,且要一一对应。配置内容一般包括:handlers 日志输出的形式,控制台或者保存日志文件;qualname:指定调用这个日志时用的名字,用 logging.getLogger(qualname) 时的名字;propagate:表示是否继承父类也就是 root 的配置信息,0 表示 否,1 表示是。

  3. handlers:定义声明 handlers 信息。常用的 handlers 包括 StreamHandler(仅将日志输出到控制台)、FileHandler(将日志信息输出保存到文件)。

  4. handler_xxx : 对 handlers 中声明的 handler 进行逐个配置,且要一一对应。配置信息包括:class,表示日志展示形式,有 StreamHandler 展示到控制台,FileHandler 保存为日志文件;level,表示日志输出的等级,一般,控制台输出 ERROR 日志,日志文件输入详细的 INFO 日志;fromatter,定义日志的格式,详细格式见下方;args,元组格式,定义返回信息的路径,sys.stderr 的作用就是返回错误信息到控制台,并以红色字体显示,保存为日志文件时,需要给出日志文件的路径,和文件的写入形式,上面用了 a 表示以追加的形式写入日志文件。

  5. formatter : 设置日志格式。可以按照自己的习惯定义多种格式,应用在不同等级的配置信息。

  6. formatter_xxx : 对声明的formatterjinx进行配置,常见的日志格式见下方。

调用日志配置文件

日志信息配置文件完成后,接下来,我们讲下怎么调用。

我们首先要打开同级目录下的 logger.conf 文件,并读取配置文件。

然后读取配置文件信息来定义 logger。

然后直接在相应的位置直接调用 logger 显示你想要的日志即可。

这样,testlog.log 的日志文件也会生成在同级目录下。

 

文章为pk哥原创,我在我的公众号: Python 知识圈 上会分享更多心得体会,你也可以关注。

***版权申明:本文为 Python知识圈 pyzhishiquan.com 原创,没有Python知识圈书面授权,请勿以任何形式转载,摘编,复制或镜像。***

为您推荐

发表评论

电子邮件地址不会被公开。