日志维护库:loguru

在复杂的项目中,了解程序的运行状态变得至关重要。在这个过程中,日志记录(logging)成为我们追踪、调试和了解代码执行的不可或缺的工具。在python语言中常用logging日志库,但是logging日志库使用相对繁琐,在这里推荐日志库:loguru。

1. 安装

bash 复制代码
pip install loguru

loguru相对于logging不需要复杂的配置。

2. 使用说明

2.1. 日志打印

python 复制代码
from loguru import logger

logger.debug('调试消息')
logger.info('普通消息')
logger.warning('警告消息')
logger.error('错误消息')
logger.critical('严重错误消息')
logger.success('成功调用')

# 关闭控制台输出
# logger.remove(handler_id=None)

2.2. 日志保存

python 复制代码
import os
from loguru import logger

logDir = "../file.log"
if not os.path.exists(logDir):
    os.mkdir(logDir)

# 终端输出控制
# logger.remove(handler_id=None)

# 设置日志保存文件
logger.add(logFile)
logger.debug('调试消息')
logger.info('普通消息')
logger.warning('警告消息')
logger.error('错误消息')
logger.critical('严重错误消息')
logger.success('成功调用')

loguru默认的输出格式是:时间、级别、模块、行号以及日志内容。

自定义设置

logger.add('file_{time}.log', format="{name} {level} {message}", level="INFO", rotation='5 MB', retention="10 days", compression="zip", encoding='utf-8'))

  • 日志名设置
  • 日志格式
  • 日志级别
  • rotation:指定日志文件大小,达到指定文件大小后新建日志
  • retention:设置定期清理的时间
  • compression:日志压缩

2.3 记录报错信息

logger.exception('错误消息')记录报错信息。

注意,logger.error('错误消息')无法记录程序的报错信息。

参考

1 https://github.com/Delgan/loguru

2 https://loguru.readthedocs.io/en/stable/index.html

欢迎关注公众号

相关推荐
Decay__6 小时前
12_MySQL InnoDB 内存与锁调优 —— Buffer Pool、redo log、隔离级别与锁等待
运维·数据库·sql·mysql·架构
笃行3506 小时前
AI数据库的库内四层结构,KingbaseES 产品拆解
数据库
我是大猴子8 小时前
redis
数据库·redis·缓存
LongRunning10 小时前
【Linux】RK3568-OpenCV+YOLO(八)
linux·opencv·yolo
苏宸啊10 小时前
MySQL(一)
数据库·mysql
2603_9696948510 小时前
JDBC 基础学习笔记:API 核心原理解析与 CRUD 代码实操
数据库·笔记·mysql·学习方法·database·sql注入
这个DBA有点耶11 小时前
库内语义构建 vs 外挂向量库:业务语义缺失,才是RAG“胡说八道”的根源
数据库·mysql·aigc
迪康coolmu11 小时前
出差终端数据安全落地实战:基于迪康端点安全一体化管理系统的四道防线实践
运维·服务器·经验分享·笔记·其他·安全·php
kobe_OKOK_12 小时前
mysql 开启 binlog 日志
数据库·mysql
鸽芷咕13 小时前
KingbaseES 调参先看执行计划,参数是答案不是起点
数据库