首页 > 编程语言 >python接口自动化-logging日志

python接口自动化-logging日志

时间:2023-02-05 16:13:39浏览次数:48  
标签:logging python 处理器 日志 级别 logger

logging模块的日志级别:日志级别一共有5个从低到高如下, 作用是在当你给python函数赋予日志器时, 需要自己标记日志级别(后面会用到)

DEBUG(调试级别):严重程度最低级别,详细程度最高的日志信息,常用于问题诊断

INFO(轻微级别):严重程度仅次于DEBUG,信息详细程度也仅次于DEBUG,通常只记录关键节点信息,用于确认一切是否按照我们预期的那样进行工作

WARNING(警告级别):当某些不期望的事情发生时记录的信息(如,磁盘可用空间较低),但是此时应用程序还是正常运行的

ERROR(错误级别):由于一个更严重的问题导致某些功能不能正常运行时记录的信息

CRITICAL(严重错误级别):当发生严重错误,导致应用程序不能继续运行时记录的信息

 

python-logging四大组件:

logger:日志器, 提供应用程序代码直接使用的接口

handler:处理器,用于将日志记录发送到指定的目的位置

formater:格式器, 用于定义日志信息的输出格式

filter:过滤器, 过滤日志内容

 

编写第一个日志器:

import logging

# 创建日志器: logging_name(日志器名,可以随便写),一个日志器可以有多个处理器, 并且每个处理器都可以有自己不同的格式器及过滤器
logger = logging.getLogger('logging_name')

# 创建处理器:
sh = logging.StreamHandler()

# 创建格式器: 日志时间%(asctime)s、文件名%(filename)s、行%(lineno)d、日志级别、错误内容
ft = logging.Formatter(fmt='''日志时间: %(asctime)s
文件名: %(filename)s 在第%(lineno)d行
日志级别: %(levelname)s
错误内容: %(message)s
''', datefmt='%Y年%m月%d日 %X')

# 在日志器中添加处理器
logger.addHandler(sh)

# 将设置好的格式器添加到处理器中
sh.setFormatter(ft)

# 输出日志信息,错误内容需要自己写
getattr(logger, 'error')('这是一个日志内容,根据自己喜好来写')

执行结果:

日志时间: 2023年02月05日 16:10:23
文件名: test_001.py 在第23行
日志级别: ERROR
错误内容: 这是一个日志内容,根据自己喜好来写

 

 

上面说明了日志器的简单创建, 下面就是如何将日志器融入到自动化中

 

标签:logging,python,处理器,日志,级别,logger
From: https://www.cnblogs.com/FBGG/p/17093497.html

相关文章

  • RBMQ中python案例一:简单模式
    一、生产者与消费者模式之简单模式,原理图   二、生产者产生消息importjsonimportpikaimportdatetime#生产者producer.pydefget_message():#......
  • python-pytest.ini介绍
    一、pytest.ini执行方式含义[pytest]addopts=-vsq--html=./report.htmltestpaths=./testConftestpython_files=test*.pypython_classes=Test*python_func......
  • Mac-pycharm执行python3 manage.py makemigrations报错处理
    Mac-pycharm执行python3manage.pymakemigrations报错处理1报错:NameError:name'_mysql'isnotdefined参考:https://blog.csdn.net/weixin_35757704/article/detail......
  • Python黑客编程之tcp代理
    目的写一款socket代理工具,其实就是在原来两极通信中再加一极,中间极用来转发socket的流量,可以在中间层面实现流量的拦截和篡改代码代理importsocketimportsysim......
  • Spring3 - Log4j2日志框架
    启用Log4j2日志框架Log4j2日志概述在项目开发中,日志十分的重要,不管是记录运行情况还是定位线上问题,都离不开对日志的分析。日志记录了系统行为的时间、地点、状态等相关......
  • python collection Chainmap Counter
    chainmap是一个方便的工具类。它是使用链的方式将多个dict链在一起,并不是真正的生成一个新的dict,从而允许程序可以这获取任意一个dict所包含的所有key对应的value。但是......
  • 整理我遇到的 Python 的疑难问题
    1如果字典里一个键指向一个实例,深拷贝会拷贝出一个新的实例吗?不会:classfoo:def__init__(self):print('doinitfoo')a={'cls':foo()}a#......
  • python 3.python入门
    1.编程语言介绍1.1分类机器语言#机器语言用二进制代码0和1描述的指令称为机器指令,由于计算机内部是基于二进制指令工作的,所以机器语言是直接控制计算......
  • python Listbox插入数据导致GUI崩溃
    提问: 我用windnd模块做了个文件拖入获取路径的功能,想把获取到的路径插入到列表,但是GUI会崩溃,下面是原代码求帮忙看看咋回事importwindndimportthreadingimporttk......
  • python内置函数len()
    len()len()函数用于返回对象(字符串、字节、元组、列表等)的长度(元素个数)len()函数的语法:len(s)代码示例print(len(range(10)))print(len(["1","2","3"]))print(len......