python日志模块loguru详解

目录
  • 前言
  • 使用步骤
    • 安装库
    • 简单使用方法
    • 配置
    • 异常追溯
  • 总结

前言

在部署一些定时运行或者长期运行的任务时,为了留存一些导致程序出现异常或错误的信息,通常会才用日志的方式来进行记录这些信息。python内置的logging标准库博主是没用过,今天给大家介绍loguruloguru 库的使用可以说是十分简单,希望通过本文大家再也不用通过print来排查代码了。

使用步骤

安装库

pip install loguru

简单使用方法

from loguru import logger

logger.debug("debug message")
logger.info("info level message")
logger.warning("warning level message")
logger.critical("critical level message")

从这个可以看出,logger.debug、logger.info、logger.warning、logger.critical不仅可以代替print,还为输出的日志信息带上了不同的颜色样式,使得结果更加美观。

配置

使用基本的add() 方法就可以对logger 进行简单的配置。

logger.add("runtime_{time}.log", rotation="500 MB")    # 文件过大于500M就会重新生成一个文件
logger.add("runtime_{time}.log", rotation="00:00")     # 每天0点创建新文件
logger.add("runtime_{time}.log", rotation="1 week")    # 文件每过一周就会创建新文件

logger.add("test_4.log", retention="5 days")  # 只保留最近五天的日志文件

logger.add("test_5.log", compression="zip")    # 以zip格式对日志进行保存

其中time为占位符:可以自动生成时间,生成一个文件名包含时间的 log 文件。

异常追溯

当遇到错误是,如果在打印出log的时候没有配置 Traceback 的输出,很有可能无法追踪错误。loguru提供了装饰器@logger.catch()就可以直接进行 Traceback 的记录。
建议在程序开始运行之前使用add()方法新建一个运行日志,这样所有的日志都会被记录到log之中。

from loguru import logger

@logger.catch()
def test():
    return 1/0

if __name__ == '__main__':
    logger.add("test.log", retention="5 days")
    test()

总结

本文介绍了关于loguru的常用方法,使用loguru 库无疑还是很香的,毕竟别人已经为我们一些日常的通用性需求提供了封装好的解决方案,无论是在学习还是在使用的成本上,无疑还是比较小的。

到此这篇关于python日志模块loguru详解的文章就介绍到这了,更多相关python loguru模块内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python loguru日志库之高效输出控制台日志和日志记录

    1安装loguru loguru的PyPI地址为:https://pypi.org/project/loguru/ GitHub仓库地址为:https://github.com/Delgan/loguru 我们可以直接使用pip命令对其进行安装 pip install loguru 或者下载其源码,使用Python命令进行安装. |2loguru简单使用 from loguru import logger logger.info("中文loguru") logger.debug(&qu

  • Python 第三方日志框架loguru使用

    解决中文乱码问题 项目地址 github: https://github.com/Delgan/loguru 文档:https://loguru.readthedocs.io/en/stable/index.html 安装 pip install loguru 1.输出日志 from loguru import logger logger.debug("这是一条debug日志") 终端执行后出现带颜色的日志,挺酷的 2.输出到文件 from loguru import logger l

  • python日志模块loguru详解

    目录 前言 使用步骤 安装库 简单使用方法 配置 异常追溯 总结 前言 在部署一些定时运行或者长期运行的任务时,为了留存一些导致程序出现异常或错误的信息,通常会才用日志的方式来进行记录这些信息.python内置的logging标准库博主是没用过,今天给大家介绍loguru,loguru 库的使用可以说是十分简单,希望通过本文大家再也不用通过print来排查代码了. 使用步骤 安装库 pip install loguru 简单使用方法 from loguru import logger logge

  • python logging日志模块的详解

    python logging日志模块的详解 日志级别 日志一共分成5个等级,从低到高分别是:DEBUG INFO WARNING ERROR CRITICAL. DEBUG:详细的信息,通常只出现在诊断问题上 INFO:确认一切按预期运行 WARNING:一个迹象表明,一些意想不到的事情发生了,或表明一些问题在不久的将来(例如.磁盘空间低").这个软件还能按预期工作. ERROR:更严重的问题,软件没能执行一些功能 CRITICAL:一个严重的错误,这表明程序本身可能无法继续运行 这5个等级,也

  • 对Python信号处理模块signal详解

    Python中对信号处理的模块主要是使用signal模块,但signal主要是针对Unix系统,所以在Windows平台上Python不能很好的发挥信号处理的功能. 要查看Python中的信号量,可以使用dir(signal)来查看. signal.signal() 在signal模块中,主要是使用signal.signal()函数来预设信号处理函数 singnal.signal(signalnum, handler) 其中第一个参数是信号量,第二个参数信号处理函数. 下面看个简单的例子,其中

  • python调试模块ipdb详解

    目录 1. 调试python 1.1 使用ipdb 1.2 常用命令 1. 调试python ipdb是用来python中用以交互式debug的模块,可以直接利用pip安装; 其功能类似于pycharm中 python控制台,而使用ipdb 的优点,便是直接在代码中调试,避免了在python控制台,或者重新设置一些简单变量. pip install ipdb 1.1 使用ipdb 当程序运行到ipdb.set_trace()的地方会自动进入debug模式. for i in range(5):

  • Python日志采集代码详解

    目录 一,日志概述 1,日志作用 2,日志级别 3,日志格式 4,日志位置 二,logging模块 1,简介 2,文档 三,logging第一种使用方法:简单配置使用 1,使用方法 2,basicConfig()部分参数说明 3,示例1:日志打印至控制台 4,示例2:日志保存至文件 四,logging的第二种使用方式:日志流处理流程 1,logging四大组件介绍 2,Logger 记录器 3,Handler 处理器 3.1,StreamHandler 3.2,FileHandler 4,Fil

  • Django logging日志模块实例详解(日志记录模板配置)

    目录 一.Django日志 二.Logger 记录器 Django 内置记录器 三.Handler 处理程序 Logging 自身携带Handler 四.Filter过滤器 五.Formatters格式化器 六:Django 集成日志logginger 模块 总结 一.Django日志 Django使用python内建的logging模块打印日志,Python的logging配置由四个部分组成: 1>.记录器(Logger) 2>.处理程序(Handler) 3>.过滤器(Filter)

  • Python OS模块实例详解

    本文实例讲述了Python OS模块.分享给大家供大家参考,具体如下: os模块 在自动化测试中,经常需要查找操作文件,比如查找配置文件(从而读取配置文件的信息),查找测试报告等等,经常会对大量文件和路径进行操作,这就需要依赖os模块. 1. os.getcwd() 功能:查看当前所在路径 import os print(os.getcwd()) 2. os.listdir() 列举目录下所有的文件,返回的是列表类型 import os print(os.listdir("c:\file&quo

  • Python伪随机数模块random详解

    目录 random模块 random.seed 常用整数随机函数 常用序列随机函数 常用实数随机函数 总结 random模块 该模块实现了各种分布的伪随机数生成器.(包括在实数轴上计算均匀.正态(高斯).对数正态.负指数.伽马和贝塔分布的函数)不应将此模块的伪随机生成器用于安全目的.有关安全性或加密用途,请使用secrets模块. 关于random模块的更多详细内容,请参考官方文档random — 生成伪随机数 下面列举一下该模块常用的功能. random.seed random.seed(a=

  • MyBatis是如何实现日志模块的详解

    场景复现 你知道MyBatis是怎么实现日志的?额,这个简单,我知道啊!不就是在mybatis-config.xml文件中配置一下吗? <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <settings> <set

  • Python Deque 模块使用详解

    创建Deque序列: from collections import deque d = deque() Deque提供了类似list的操作方法: d = deque() d.append('1') d.append('2') d.append('3') len(d) d[0] d[-1] 输出结果: 3 '1' '3' 两端都使用pop: d = deque('12345') len(d) d.popleft() d.pop() d 输出结果: 5 '1' '5' deque(['2', '3

随机推荐