网络编程
位置:首页>> 网络编程>> Python编程>> python日志模块loguru详解

python日志模块loguru详解

作者:JulyLi2019  发布时间:2023-10-23 20:50:08 

标签: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")

python日志模块loguru详解

从这个可以看出,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 文件。

python日志模块loguru详解

异常追溯

当遇到错误是,如果在打印出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()

python日志模块loguru详解

python日志模块loguru详解

来源:https://blog.csdn.net/JulyLi2019/article/details/122931683

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com