Python常用代码: 封装日志器

Python基础之日志封装 Warning : 打印warning,error,critical级别的日志,一个迹象表明,一些意想不到的事情发生了,或表明一些问题在不久的将来(例如,磁盘空间低),这个软件还能按预期工作。2、logger = logging.getLogger( ): 生成一个logging模块的主体,为程序提供记录日志的接口,并根据日志级别把对应日志分发给不同 handler;8、通过调用Handler的setFormatter把fmt对象作为参数传入来定义输出到控制台的日志格式; 阅读详情

复制代码, 保存为.py文件, 在需要使用的模块调用即可(需要手动修改日志文件保存位置)

import logging.handlers


class GetLog:
    logger = None

    @classmethod
    def get_log(cls):
        if cls.logger is None:
            # 获取 日志器
            cls.logger = logging.getLogger()
            # 设置 级别
            cls.logger.setLevel(logging.INFO)
            # 获取处理器
            th = logging.handlers.TimedRotatingFileHandler(filename="{}/logs/log.log".format('日志文件保存位置'),
                                                           when="midnight",
                                                           interval=1,
                                                           backupCount=3,
                                                           encoding="utf-8")
            # 设置处理器级别
            th.setLevel(logging.INFO)
            # 获取 格式器
            fmt = "%(asctime)s %(levelname)s [%(name)s] [%(filename)s (%(funcName)s:%(lineno)d] - %(message)s"
            fm = logging.Formatter(fmt)
            # 将格式器添加到处理器
            th.setFormatter(fm)
            # 将处理器 添加到日志器
            cls.logger.addHandler(th)
        # 返回 日志器
        return cls.logger


if __name__ == '__main__':
    log = GetLog().get_log()
    log.info('正常日志')
    log.error('错误日志')
    log.warning('警告日志')

python 封装自己的log日志系统 封装记录log日志,多模块使用 # coding=utf-8 import logging import time import os log_path = './log' class Log: def __init__(self): self.now = time.strftime("%Y-%m-%d--%H-%M-%S") self.logna... 阅读详情

相关推荐

Python自动化测试之自定义日志及其封装

前言: 在软件测试的日常工作中,日志是个非常重要的模块 对于测试来说,日志的作用主要有以下四点: 1.调试程序 2.了解系统程序运行的情况是否正常 3.系统城西运行故障分析和问题定位 4.用来做用户行为分析和数据统计 因此在编写自动化测试脚本和搭建自动化测试框架时,最好加上日志的收集功能,可以通过日志来定位问题。 正文 相关概念 在自定义日志之前,我们需要了解如下信息: 日志收集器 可以理解为用于收集日志信息的容器; 日志级别(Level): 常见的日志级别有:debug、info、warning、err

Chaqian的博客 3284

【测试开发】Python—logging日志封装

python日志模块,可以说在工程项目中应该很广泛,本文简单地介绍Logging封装模块的编写及使用。当前环境:python 3.6.8;编译环境:pycharm。

尹煜的博客 6010

python 日志封装 日志显示控制 屏蔽日志

python 日志封装 日志显示控制 屏蔽日志

jacke121的专栏 2802

python之logging日志封装

第二节–python自动化测试日志封装 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:这个章节主要介绍python中使用logging自己进行一个简单的日志封装 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录第二节--python自动化测试日志封装一、日志logging的简单介绍二、日志的步骤讲解1.控制台日志输出2.文件日志输出3、日志的封装总结 提示:这里可以添加本文要记录的大概内容: 提示:以下是本篇文章正文内容,下面案例可供参考 一、日志

weixin_43977279的博客 4875

Python日志Log封装实战工具,开箱即用

如果说Handler解决了“日志去哪里”,那么Formatter就解决了“日志长什么样”。它是日志内容呈现的核心引擎,决定了每条日志包含哪些字段、如何排列、时间如何显示。除了内置字段外,还可以通过Filter或重写方法注入自定义上下文,如请求ID、用户ID、Trace ID 等分布式追踪信息。# 动态修改字段# 使用示例# 手动传递上下文属性graph LRA[开始配置日志系统] --> B{需要输出到?B -->|控制台| C[StreamHandler]

weixin_35636570的博客 1048

python3 logging日志封装实例

主要介绍了python3 logging日志封装实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

python(4):python的日志封装

log 日志级别 NOTSET=0,DEBUG=10,INFO=20,WARNING=30,ERROR=40,CRITICAL=50。"""在log文件中输出日志"""通过python自带的logging模块进行封装。# 日志文件名称显示一天的日志。# 创建文件处理程序并实现追加。# 创建日志对象logger。"""在控制台输出日志"""# 把日志信息输出到文件中。# 把日志信息输出到控制台。# 设置日志文件里的格式。# 设置日志文件里的级别。下载第三方插件 nb-log;

奔跑在路上you的博客 1043

python操作日志的封装方法(两种方法)

前言 今天就简单的对日志做个封装,实际工作中直接拿去用吧 方法1 """ ------------------------------------ @Time : 2019/5/22 8:12 @Auth : linux超 @File : logfile.py @IDE : PyCharm @Motto: Real warriors,dare to face the bleak warning,dare to face the incisive error! ------------------------------------ """ import logging class Log(o

python dictConfig封装自定义日志器优化(三)

之前使用dictConfig写了自定义日志器的封装,但感觉不是很好,责任划分不明确,边在实践中进行优化,把日志的一部分配置(如日志文件名、路径等)摘出来放在项目配置文件中,其他配置依旧放在yaml文件中维护。 如有不对或可优化的点,欢迎指出! 日志器封装demo 1. 从项目配置文件中读取日志相关配置内容 content of src __init__.py # content of src __init__.py # -*- coding: utf-8 -*- # @Time : 2020.

Holidayzz的博客 805

python3中的logging记录日志实现过程及封装成类的操作

主要介绍了python3中的logging记录日志实现过程及封装成类的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

S32K344 Flash Driver实战:手把手教你实现任意字节写入与扇区解锁(含C40_Ip避坑指南)

本文深入解析S32K344微控制器的Flash驱动开发,重点解决C40_Ip驱动库的8字节对齐限制和扇区保护锁问题。通过实战案例和代码示例,详细介绍了如何实现任意字节写入、扇区解锁及性能优化策略,为Bootloader和OTA升级等应用提供可靠解决方案。

weixin_33713707的博客 432

python 自定义日志器封装(一)

思路:使用自定义封装日志器进行日志的输出:按单个文件,按文件大小,按时间。如果初始化异常则使用默认日志器 步骤如下: 1. 默认日志器,默认日志器使用按天分割日志 #!/usr/bin/python3 # -*- coding: utf-8 -*- # Author : holidaylzz # Time : 2020/5/10 import time import yaml.scanner import logging import logging.config from logging.h.

Holidayzz的博客 704

综合能源系统多时间尺度优化调度!诸多创新点让你抓住审稿人的心!

主要介绍综合能源系统的设备组成结构,并针对屋顶光伏系统、冷-热-电联供系统中的燃气轮机、燃气锅炉、光伏溴化锂制冷机、卡琳娜余热发电、中央空调系统,以及外网交互系统的配电网与天然气管网交互关系进行数学建模。1) 源-荷-储协同调度:研究屋顶光伏、燃气轮机、燃气锅炉等源侧设备,中央空调、电-热-冷负荷、可平移电负荷、可削减温控负荷等负荷侧资源,以及储能系统、电动汽车等储能侧设备的协同调度,以提高风光消纳能力,满足社会能源需求。通过电转热、电转冷、电转气等多能耦合方式,可进一步促进可再生能源的应用与发展。

weixin_48747334的博客 1488

python封装日志类

日志在编写代码的时候会要经常遇到的,做自动化测试的时候也需要查看日志,所以需要了解python封装日志的方式。 python的日志等级是:CRITICAL>ERROR>WARNING>INFO>DEBUG 默认的等级是WARNING,设置了等级,就只会输出大于等于设置等级的 比如logger.setLevel(level=logging.DEBUG),那么五种级别的都会打印 如果logger.setLevel(level=logging.ERROR),那么只会打印error和cri

shenshenruoxi的博客 1537

从选型到调试:MCU外部晶振电路设计的实战避坑指南

本文详细解析了MCU外部晶振电路设计的关键要点,从选型到调试提供全面指南。重点探讨了晶振频率选择、负载电容计算、PCB布局优化等核心问题,并分享常见故障排查技巧与EMC设计经验,帮助工程师规避设计陷阱,提升嵌入式系统时钟稳定性。

weixin_30872577的博客 277

inferCNVpy分析流程学习

inferCNV的用途大家都已经很清楚了,接下来就走一下流程,试一试Python版的inferCNV。使用的数据集为:GSE188711,既往推文可见:Scanpy分析全流程(含harmonypy整合/细胞周期矫正/双细胞检测及去除)(

zfyyzhys的博客 1295

python日志logging封装

方式一:封装代码 import logging, logging.handlers, time, os class Log(object): ''' logging的初始化操作,以类封装的形式进行 ''' def __init__(self): # 定义对应的程序模块名name,默认为root self.logger = l...

shuiganjiuying11的博客 3424

从解压到编译:手把手带你用TeXstudio搞定第一篇ACM LaTeX论文

本文详细指导如何使用TeXstudio从解压ACM LaTeX模板到成功编译第一篇学术论文的全过程。涵盖环境准备、模板配置、TeXstudio设置及常见问题排查,特别针对ACM会议论文格式要求,帮助学术新人快速掌握LaTeX写作技巧。

weixin_30655569的博客 254

自动化框架之Python日志模块二次封装技巧分享

前言: 在我们做测试自动化框架设计的时候,需要对日志模块进行二次开发,以方便我们后面进行关键日志记录和报错日志排查,本章主要分享我在对日志做二次封装过程中的一些小技巧和方法 一、logging模块简介 logging日志模块与print的区别: ① logging可以设置不同的日志级别 ② 可以指定如何输出及输出的位置应用场景:当需要看大量的地方或者在一个文件中查看的时候,这时print不太方便,所以python引入了logging模块来记录我想要的信息 ③ logging相对print来...

weixin_47614014的博客 3166

【Claude】媒体文件处理错误:PDF 与 Image 过大的检测与预处理方法 bug报错已解决

图片压缩是必须的:原始图片的 base64 会占用大量 TokenPDF 提取文本优于传图片:文本版 PDF 比扫描版更省 Token分块处理大文件:不要一次性处理整个大文件控制分辨率:800x800 通常足够 Claude 分析。

博客 6359

addr2line解析不出来行号的解决方式(汇编解析高阶版)

摘要:本文针对AEC crash问题中addr2line无法解析行号的情况,通过llvm-addr2line和反汇编分析,定位到CamX::AECBEStats17::AdjustROIParams函数中的乘法溢出问题。关键发现包括: 常规addr2line只能解析到函数名但无具体行号 llvm-addr2line解析出多个可能溢出点(行196/204/211/218/270/271) 反汇编显示6个条件分支跳转到溢出处理函数 源码分析确认这些位置均存在乘法运算 最终通过汇编级调试工具成功定位UBsan报告

168

python dictConfig封装自定义日志器(二)

之前写的自定义日志器存在不完善,现在进行自定义日志器优化: 读取yaml日志配置文件 更改日志配置路径 使用logging.config.dictConfig配置日志 获取Logger进行使用 代码展示 # version must be 1 # logger配置文件 #########################################logging yaml profile################################################## vers.

Holidayzz的博客 919

手把手带你死磕ORBSLAM3源代码(一)目录详解

ORB-SLAM3是一种基于特征点的稀疏实时单目SLAM(Simultaneous Localization and Mapping)系统。它是ORB-SLAM系列模型的第三代版本,用于在无人机、机器人和增强现实等领域中进行实时定位和建图。ORB-SLAM3使用了一种特征点提取和描述算法,称为ORB(Oriented FAST and Rotated BRIEF)。该算法能够提取图像中的稳定特征,并将其用于地图建立和相机定位。

anananajiushiwo的博客 2299

python操作日志的封装

前言 曾经转载过一篇关于python日志模块logging的详解 https://www.cnblogs.com/linuxchao/p/linuxchao-log.html, 虽然这篇文章是别人写的, 但是我就是靠着这篇文章入门的logging,所以我觉得没必要再继续说些理论的东西,今天就简单的对日志做个封装,实际工作中直接拿去用吧 方法1 """ ------------...

dengying1836的博客 501

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Python基础之logging日志模块封装

  引言   使用python做自动化测试的时候,对于关键信息输出和记录是必要的,方便调试和记录查找。python有个logging模块,我们简单对其进行封装。   设计流程   话不多说,流程图已经画,自己领会。   源码    """ 封装log方法 """ import os import time import logging.handlers # 日志打印等级...

像蚂蚁一样工作,像蝴蝶一样生活 3377

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Python自动化框架-日志模块二次封装

主要思路为定义一个类如LogUtil,并将定义好的logger作为其属性,再将logger.info等日志打印方法封装在类中为info,即可通过LogUtil().info('mesg')的方式在框架中使用封装好的日志模块。根据上述四部设置好以后,即可通过logger.info('mesg')打印所需的日志到文件及控制台。一.日志模块的使用主要包括以下四部分。1.创建日志器并设置输出级别。3.为处理器设置格式及级别。4.为日志器添加处理器。

weixin_44878601的博客 733

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: vscode的vim拷贝粘贴到系统剪切板
下一篇: Python常用代码: 数据读写(json, txt, html)
Noobovo
博客等级 码龄11年 57粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Noobovo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值