首页 > 其他分享 >第4课、Pytest-logging日志模块

第4课、Pytest-logging日志模块

时间:2023-02-08 22:25:35浏览次数:42  
标签:logging self Pytest 日志 formatter config logger

日志模块详细介绍:

https://www.jb51.net/article/214933.htm

 

import logging
import time
import os
from Base.basePath import BasePath as BP
from Base.utils import read_config_ini

config = read_config_ini(BP.CONFIG_FILE)['日志打印配置']
rq = time.strftime('%Y%m%d_%H', time.localtime()) + '.log'


class Logger(object):
    '''创建logger
        创建handler
        定义formatter
        给handler添加formatter
        给logger添加handler
        '''
    def __init__(self, name):
        self.name = name
        self.logger = logging.getLogger(self.name)
        # 设置日志总开关级别,级别取自配置文件
        self.logger.setLevel(config['level'])
        # 控制台输入日志对象
        self.streamHandler = logging.StreamHandler()
        # 指定日志文件写入路径
        self.fileHandler = logging.FileHandler(os.path.join(BP.PROJECT_ROOT, "Log",rq), 'a',encoding='utf-8')
        # 指定总开关书写格式
        self.formatter = logging.Formatter(config['formatter'])
        # 指定控制台日志对象级别
        self.streamHandler.setLevel(config['stream_handler_level'])
        # 指定日志文件级别
        self.fileHandler.setLevel(config['file_handler_level'])
        # 指定日志文件格式
        self.fileHandler.setFormatter(self.formatter)
        # 指定控制台日志格式
        self.streamHandler.setFormatter(self.formatter)
        # 添加handler对象给记录器
        self.logger.addHandler(self.streamHandler)
        self.logger.addHandler(self.fileHandler)

    def getLogger(self):
        return self.logger

 

标签:logging,self,Pytest,日志,formatter,config,logger
From: https://www.cnblogs.com/pingzi66-ww/p/17103530.html

相关文章

  • 第2课、Pytest自定义前置后置-fixture简单应用
        test_pytest1.py:  运行的时候鼠标放在类上才能运行全部用例importpytestclassTestCase():deftest_case_01(self):num=1+1......
  • 温习日志-14
    温习日志——2023年2月8日下午学习内容事件冒泡练习通过点击事件中函数参数的e.target就是所点击的具体元素,最终会一直向上传递,通过e.currentTarget获取最终的元素......
  • 使用Logback实现不同微服务输出各自的日志文件
    找到logback-spring.xml配置文件,在里面使用如下配置<!--定义策略日志文件的存储地址--><propertyname="logStrategy.path"value="./logs/strategy"/><!--按照每天生成......
  • 浅谈Pytest中的warning处理
    浅谈Pytest中的warning处理没有处理warning我们写一个简单的测试importpytestdeftest_demo():importwarningswarnings.warn('testwarn',DeprecationW......
  • 【转载】过滤器+spring拦截器处理服务请求日志打印
    思路:通过拦截器拦截HttpServletRequest请求,从请求对象中获取请求流,解析请求参数,封装对象打印请求参数日志痛点:Requestbody只能读取一次,因为是流。想想看,java中的流也是......
  • 使用 Log4Net 记录日志
    使用Log4Net记录日志 第一步:下载Log4Net           下载地址:http://logging.apache.org/log4net/download_log4net.cgi          把下载的......
  • Grafana 系列文章(十一):Loki 中的标签如何使日志查询更快更方便
    ......
  • robot指定日志路径和命令行运行
    -o指定Output路径-l指定Log路径-r指定Report路径    命令行运行robot用例一、运行某一条测试用例robot--<测试用例名>in<用例所在suite路径>robot-t<......
  • netcore日志
    1.日志信息源ILoggingILogging//nuget包Microsoft.Extensions.LoggingMicrosoft.Extensions.Logging.Console//控制器publicclassWeatherForecastController:C......
  • WinForm(十四)窗体滚动日志
    在桌面程序里,一般日志记录到文件里就可以了,但有的时间,也需要在窗体上动态滚动显示,这时,就需要引入日志框架了。这里引入的依旧是NLog(在我的MiniAPI系统里,用的也是NL......