当前位置: 首页 > news >正文

Python日志功能的使用

📕 参考:

Python 常用模块大全(整理) - 略微抖动 - 博客园

Python logging 模块 | 菜鸟教程


logging模块的基本用法

配置日志级别

日志级别用于控制日志的详细程度。logging 模块提供了以下几种日志级别:

  • DEBUG:详细的调试信息,通常用于开发阶段。
  • INFO:程序正常运行时的信息。
  • WARNING:表示潜在的问题,但程序仍能正常运行。
  • ERROR:表示程序中的错误,导致某些功能无法正常工作。
  • CRITICAL:表示严重的错误,可能导致程序崩溃。
logging.basicConfig(level=logging.DEBUG)  #设置日志级别

配置日志输出格式

logging.basicConfig(level=logging.DEBUG,format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",datefmt="%Y-%m-%d %H:%M:%S"
)

日志输出

默认日志输出到控制台,可以配置将日志输出到文件中。

logging.basicConfig(level=logging.DEBUG,format="%(asctime)s - %(name)s - %(levelname)s - %(message)s",filename="app.log"
)

日志的核心类和函数

logger.addHandler(handler)添加处理器logger.addHandler(handler)
logger.addFilter(filter)添加过滤器logger.addFilter(filter)

日志的使用举例

import logging# 创建记录器
logger = logging.getLogger("my_module")
logger.setLevel(logging.DEBUG)# 控制台处理器
console_handler = logging.StreamHandler()
console_handler.setLevel(logging.WARNING)# 文件处理器
file_handler = logging.FileHandler("debug.log")
file_handler.setLevel(logging.DEBUG)# 格式化
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
console_handler.setFormatter(formatter)
file_handler.setFormatter(formatter)# 添加处理器
logger.addHandler(console_handler)
logger.addHandler(file_handler)# 使用
logger.debug("调试信息")  # 仅写入文件
logger.warning("警告!")  # 同时输出到控制台和文件

http://www.xdnf.cn/news/554707.html

相关文章:

  • vue+three.js 五彩烟花效果封装+加载字体
  • AI一周事件(2025年5月13日-5月19日)
  • 外部因素导致的 ADC误差来源分析
  • 苍穹外卖04 新增菜品菜品分页查询删除菜品修改菜品
  • C语言经典面试题及答案100道
  • 思维模型和法则
  • WHAT - CSS 中的 min-width
  • HarmonyOS5云服务技术分享--自有账号对接AGC认证
  • 每日算法 -【Swift 算法】寻找两个有序数组的中位数(O(log(m+n)))详细讲解版
  • 电商虚拟户:重构资金管理逻辑,解锁高效归集与智能分账新范式
  • YOLO12改进-模块-引入Cascaded Group Attention(CGA)模块 提升小目标检测和复杂场景下的定位精度。
  • 一道并发的面试题,控制并发数量
  • Spring的AOP在什么场景下会失效?
  • 贝叶斯优化+CNN+LSTM=小论文创新点
  • 物联网(IoT)智能项目全景指南:技术构架、实现细节与应用实践
  • Oracle如何解决LATCH:CACHE BUFFERS CHAINS
  • java接口自动化初识
  • 保证数据库 + redis在读写分离场景中事务的一致性
  • 985,成立人工智能学院
  • Java高频面试之并发编程-19
  • 第50天-使用Python+Qt+DeepSeek开发AI运势测算
  • 基于springboot3 VUE3 火车订票系统前后端分离项目适合新手学习的项目包含 智能客服 换乘算法
  • 当前主流的传输技术(如OTN、IP-RAN、FlexE等)
  • C++STL之string
  • 产业互联网+三融战略:重构企业增长密码
  • 人工智能+:职业技能培训的元命题与能力重构
  • Linux 正则表达式 扩展正则表达式 gawk
  • 101个α因子#8
  • Java DTO 深度解析
  • JUC编程monitor、锁膨胀以及相关关键字