ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python-logging模块

2022-05-14 11:01:03  阅读:201  来源: 互联网

标签:None logging python 处理器 模块 记录器 日志 logger


 

 

 


 

logging

日志是对软件执行时所发生事件的一种追踪方式。软件开发人员对他们的代码添加日志调用,借此来指示某事件的发生。

一个事件通过一些包含变量数据的描述信息来描述(比如:每个事件发生时的数据都是不同的)。开发者还会区分事件的重要性,重要性也被称为 等级严重性

 

官方文档:https://docs.python.org/zh-cn/3/library/logging.html

 

日志级别

级别 使用场景
DEBUG 调试: 详细信息,常用于开发过程中调试
INFO 程序正常运行过程中产生的一些信息
WARNING 警告用户,虽然程序还在正常工作,但有可能发送错误
ERROR 由于更严重的问题,程序已不能执行一些功能了
CRITICAL 严重错误,程序已不能继续运行

注:默认的日志级别是warning

 

 

进阶

日志库采用模块化方法,并提供几类组件:记录器、处理器、过滤器和格式器。

  • Loggers :记录器暴露了应用程序代码直接使用的接口。
  • Handlers:处理器将日志记录(由记录器创建)发送到适当的目标。
  • Filters:过滤器提供了更细粒度的功能,用于确定要输出的日志记录。
  • Formatters:格式器指定最终输出中日志记录的样式。

 

 

Loggers 记录器

# 提供应用程序的调用接口
logger = logging.getLogger(__name__)
logger 是单例的

# 决定日志记录的级别
logger.setLevel()

# 将日志内容传递到相关联的handlers中
logger.addHandler() 和 logger.removeHandler()

 

 

Handlers 处理器

将日志分发到不同的目的地。可以是文件,标准输出 、邮件、或者通过socke、http等协议发送到任何地方。

StreamHandler:标准输出stdout (如显示器)分发器。

FileHandler: 将日志保存到磁盘文件的处理器

sh=loggin.StreamHandler(stream=None)

fh = logging.FileHandler(filename,mode='a',encoding=None,delay=False)

 

 

Formatters 格式器

Formatter 对象用来最终设置日志信息的顺序、结构和内容。

其构造方法为

ft = logging.Formatter.__init__(fmt=None,detefmt=None,style='%')

datefmt 默认是%Y-%m-%d %H:%M:%S 样式的

style参数默认为百分符%,这表示%(<dictionary key>)s格式的字符串

 

标签:None,logging,python,处理器,模块,记录器,日志,logger
来源: https://www.cnblogs.com/niunai/p/16269356.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有