Python——第五章:logging模块
logging 模块是 Python 中用于记录日志的官方模块。通过 logging 模块,你可以配置和管理日志的生成、处理和存储。
logging.basicConfig()用法
filename:文件名
format:数据的格式化输出。最终在日志文件中的样子时间-名称-级别-模块:错误信息
datefmt:时间的格式
level:错误的级别权重,当错误的级别权重大于等于leval的时候才会写入文件
把错误日志写入到文件x1.txt
import logging
logging.basicConfig(filename='x1.txt',
format='%(asctime)s – %(name)s – %(levelname)s - %(module)s: %(message)s',
datefmt='%Y-%m-%d%H:%M:%S',
level=40, # 记录文件中的日志的最低等级
encoding='utf-8') # 明确指定编码
# logging 日志记录,级别
logging.critical("今天系统炸了。请程序员来调试") # 最高级别的日志信息 50
logging.error("一般指的是普通的程序错误,俗称bug") # 40
logging.warning("我只是一个警告信息") # 30
logging.info("我只是一个普通的消息") # 20
logging.debug("默认最低等级的消息") # 10
logging.ERROR
把不同项目日志记录在不同的文件中
import logging
# 创建一个操作日志的对象 logger(依赖 FileHandler)
file_handler = logging.FileHandler('L1.log', 'a', encoding='utf-8')
file_handler.setFormatter(logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s - %(module)s: %(message)s"))
# 创建日志对象 logger1
logger1 = logging.Logger('A系统', level=logging.ERROR) #level=40
# 给日志对象设置文件信息
logger1.addHandler(file_handler)
# 再创建一个操作日志的对象 logger(依赖 FileHandler)
file_handler2 = logging.FileHandler('L2.log', 'a', encoding='utf-8')
file_handler2.setFormatter(logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s - %(module)s: %(message)s"))
# 创建日志对象 logger2
logger2 = logging.Logger('B系统', level=logging.ERROR)
# 给日志对象设置文件信息
logger2.addHandler(file_handler2)
# 记录错误日志
logger1.error('B系统出错了,程序员出来排查错误')
logger2.error('A系统出错了,程序员出来排查错误')
# 还可以自定义日志级别 9999
logger1.log(9999, "出大事了!")
以上用法基本上万年不变,大家就负责copy代码即可。不必强制性记忆。
Python——第五章:logging模块的更多相关文章
- Python第五章__模块介绍,常用内置模块
Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群 群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...
- 简学Python第五章__模块介绍,常用内置模块
Python第五章__模块介绍,常用内置模块 欢迎加入Linux_Python学习群 群号:478616847 目录: 模块与导入介绍 包的介绍 time &datetime模块 rando ...
- python基础学习十 logging模块详细使用【转载】
很多程序都有记录日志的需求,并且日志中包含的信息既有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,主要用于输出 ...
- Python进阶(十一)----包,logging模块
Python进阶(十一)----包,logging模块 一丶包的使用 什么是包: 包是通过使用 .模块名的方式组织python模块名称空间的方式. 通俗来说,含有一个__init__.py文件的文 ...
- Python 入门之 内置模块 --logging模块
Python 入门之 内置模块 --logging模块 1.logging -- 日志 (1)日志的作用: <1> 记录用户信息 <2> 记录个人流水 <3> 记录 ...
- 那些年被我坑过的Python——道阻且长(第五章实用模块讲解)
random模块 我的随机验证吗程序: 首先保证了字母和数字出现的概率是50% VS 50%,其次是可以订制输出多少位 def Captcha(size): Captcha_list = [] for ...
- python学习第五十二天logging模块的使用
很多程序都有记录日志的需求,并且日志包含的信息即有正常的程序访问日志,还可能有错误,警告等信息输出,python的 logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,loggin ...
- python全栈开发-logging模块(日记专用)
一.概述 很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,l ...
- Python之日志处理 logging模块
Python之日志处理(logging模块) 本节内容 日志相关概念 logging模块简介 使用logging提供的模块级别的函数记录日志 logging模块日志流处理流程 使用logging四 ...
- 小白的Python之路 day5 logging模块
logging模块的特点及用法 一.概述 很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误.警告等信息输出,python的logging模块提供了标准的日志接口,你 ...
随机推荐
- HIS系统部署的关键步骤与注意事项
HIS系统部署的关键步骤与注意事项 引言:近年来,随着信息技术的快速发展,医疗行业也逐渐意识到数字化转型的重要性与必要性.医院信息系统(HIS)作为医疗信息化的核心,旨在提高医疗服务的质量与效率.在引 ...
- Linux离线安装Mysql-5.7
1.背景描述 在真实业务场景下,Linux服务器一般位于内网,所以无法直接访问互联网资源: 特别是安装数据库的Linux服务器,在网络方面的管控只会更加严格: 因此,需要提前下载好相关资源,再传输到内 ...
- 我为什么要从PhoneGap中逃离? 转
我为什么要从PhoneGap中逃离? 摘要:每一位程序员都有自己的技术信仰,我也不例外.但当技术信仰遇到实际工作中的问题时,你又要怎么做呢?还记得刚刚接触HTML5做跨平台开发的时候这样的问题就摆在 ...
- 使用PasteSpider把你的代码升级到服务器的Docker/Podman上,K8S太庞大,PasteSpider极易上手!
如果你的服务器的内存小于16GB,那么K8S就和你无缘了,但是你可以使用PasteSpider来实现发布你的项目到服务器上! PasteSpider是一个运维工具,使用NET编写的,部署于服务器的Do ...
- 如何使用Python将PDF转为图片
将PDF转为图片能方便我们将文档内容上传至社交媒体平台进行分享.此外,转换为图片后,还可以对图像进行进一步的裁剪.调整大小或添加标记等操作. 用Python将PDF文件转JPG/ PNG图片可能是大家 ...
- CentOS7调整分区大小
前言 部署CentOS7的时候分配的动态扩充虚拟磁盘,共1T大小,在安装Centos时默认分区,系统仅给/分配50G,而大量空间都挂载到/home下,最近CentOS7使用中发现空间已不足够,所以就想 ...
- NOI 2023 游记
Day0=2023.7.23. Day -?? 订了 30 个徽章.很快认识到可能不够,又自己买了 30 个. Day -? UNR,完全没有精神状态于是两天都考半场睡半场.0+10+55,成功 Fe ...
- Linux 运行python文件时报ModuleNotFoundError: No module named 'xxxxx'
1. 问题 运行项目文件main.py,抛出异常ModuleNotFoundError: No module named 'Environment' 2. 原因 Linux环境下,直接运行.py文件, ...
- form表单调接口校验 比如后台验证用户名是否存在
<FormItem {...formItemLayout} label={'显示名'}> {getFieldDecorator('displayName', { initialValue: ...
- QSplitter 自我总结
①.QSplitter(QWidget* parent = Q_NULLPTR); //构造函数 QSplitter(Qt::Orientation orientation , QWidget* pa ...