轻量级Python日志库Loguru


作者:Harkerbest

声明:本文章为原创文章,本文章永久链接:https://www.harkerbest.cn/?p=672,转载请注明原文地址,盗版必究!!!


  如果你还在为Python自带日志库logging的复杂配置而感到厌烦,又或者依旧使用print()来输出程序日志,那么轻量级日志库Loguru将是你的最佳选择!它具备以下特点:

  • 无需复杂的配置,几行代码就可以上手
  • 可以区分不同类型的日志:正常,警告,错误,严重
  • 可以轻松地指定日志文件格式、名称
  • 可以将不同类型的日志存入不同的文件中
  • 支持异步、线程安全、进程安全
  • 支持string format格式
  • ……

安装

一如既往地简单,使用pip即可,在命令提示符键入以下命令即可

pip install loguru

教程

只需要下面这些简单的例子你就能知道使用Loguru有多便捷!

简单输出

from loguru import logger

logger.info("一个普通的info信息")

上述代码运行结果如下

2023-07-13 22:01:12.982 | INFO     | __main__:<module>:1 - 一个普通的info信息

没错,输出一个包含基本信息的日志仅仅需要这两行代码,就像print一样方便。那么,如果要把日志保存到指定文件中呢?

保存日志文件

from loguru import logger

logger.add("out_put.log")
logger.info("这条日志将会被写入文件")

执行后,像上面那样的日志就会被保存到文件out_put.log中,当然,你也可以写入完整的路径用以指定文件的保存位置。

不同级别的日志信息

为了区分日志信息的重要性,程序输出日志时会把信息按相应的等级输出,Loguru中使用不同的函数来输出不同级别的信息。支持的级别有这七种(括号中的整数表示日志层级Log level no,数值越大,层级越高):

  • TRACE (5): 用于记录程序执行路径的细节信息,以进行诊断。
  • DEBUG (10): 开发人员使用该工具记录调试信息。
  • INFO (20): 用于记录描述程序正常操作的信息消息。
  • SUCCESS (25): 类似于INFO,用于指示操作成功的情况。
  • WARNING (30): 警告类型,用于指示可能需要进一步调查的不寻常事件。
  • ERROR (40): 错误类型,用于记录影响特定操作的错误条件。
  • CRITICAL (50): 严重类型,用于记录阻止核心功能正常工作的错误条件。

对应的输出函数如下:

logger.trace("A trace message.")
logger.debug("A debug message.")
logger.info("An info message.")
logger.success("A success message.")
logger.warning("A warning message.")
logger.error("An error message.")
logger.critical("A critical message.")

输出效果如图:

%title插图%num

未完待续……

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

CAPTCHAis initialing...