Bull's blog Bull's blog
首页
工作
  • 分类
  • 标签
  • 归档
关于

Bull

首页
工作
  • 分类
  • 标签
  • 归档
关于
  • 马上消费

  • 斗虫

    • 基础课件

      • python基础和条件语句
      • 基础数据类型_改
      • 函数
      • 1 函数练习
      • 32文件操作
      • 3 异常
      • 面向对象
      • 1面向对象案例-学生管理系统
      • 1Python基础练习题
      • 自动化测试理论
      • 2 接口测试基础
      • 3 requests
      • 4 代码
      • 5 简单封装
      • 1 pytest
      • 签名的设计
      • 接口case设计
      • 3 新建一个接口
      • x装饰器语法
      • httprunner2.x工具快速入门
      • httprunner3.x的简介
      • Flask框架
      • 了解任务
      • mock服务
      • UI自动化策略
      • PageObject模式
      • pytest参数化进阶
      • pytest框架生成报告
      • Yaml运用
      • 日志类模板
      • 持续集成
      • jdk配置
      • Linux基础
      • Jenkins主从测试任务
      • conda管理项目环境
      • 面试题-栈结构
      • 面试题-找众数
      • 正交测试法
      • 装饰器
      • 综合面试题_原版
    • RF

  • 天眼查

  • 某米

  • 工作经历
  • 斗虫
  • 基础课件
wangyang
2023-09-02

日志类模板

# 封装日志类

项目在运行的时候,我们不可能一直盯着控制台. 需要使用“日志文件”的形式,来记录运行状态

python基础库中的logging是用来处理日志的 logging库里有三个大模块

1.日志器:是日志的入口,好比生活中写笔记,需要先有一个“本子” 它描述了日志的级别:debug(调试)、info、warning、error、critical

2.格式器:每一条记录,需要有什么样的信息(日志的时间、记录的方法、变量)

3.处理器:决定了日志数据如何处理,比如说写入到某个文件、输出到控制台、日志文件3个小时新建一个新文件

#!/anaconda3/envs/FEALPy/bin python3.7
# -*- coding: utf-8 -*-
# ---
# @File: 日志处理.py
# @Author: Bull
# ---


import logging.handlers
# 1.日志器
# 创建日志器对象
logger = logging.getLogger()
#设置日志级别
logger.setLevel(logging.INFO)

# 2.格式器
# 格式器会解析符合规则的字串
fmt = "%(asctime)s %(levelname)s [%(name)s] [%(filename)s (%(funcName)s:%(lineno)d] - %(message)s"
fm = logging.Formatter(fmt)

# 3.处理器
tf = logging.handlers.TimedRotatingFileHandler(
    filename = 'test.log',
    when = 'D',
    backupCount = 7,
    encoding = 'utf-8'
)

# 在“处理器”对象中装载“格式器”对象
tf.setFormatter(fm)
# 给“处理器”设置级别
tf.setLevel(logging.INFO)
logger.addHandler(tf)
# *实际上,日志功能实现了一个“生产者”→“消费者”的模式
# logger.info('调试信息')、logger.debug('调试信息')这样的方法生产了“日志”数据对象
# logger.addHandler(tf)-即增加一个日志数据的“消费者”,tf处理器描述了“消费者”如何使用数据

if __name__ == '__main__':
    logger.debug('调试信息')
    logger.info('消息级别的调试信息')
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#python自动化#自动化入门
上次更新: 2023/09/05, 02:16:11
Yaml运用
持续集成

← Yaml运用 持续集成→

最近更新
01
30.快速实现接口重构测试---deepdiff库使用
09-21
02
概述
09-07
03
概述
09-07
更多文章>
Theme by Vdoing | Copyright © 2018-2025 Evan Xu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式