python日志模块loguru详解
前言
在部署一些定时运行或者长期运行的任务时,为了留存一些导致程序出现异常或错误的信息,通常会才用日志的方式来进行记录这些信息。python内置的logging
标准库博主是没用过,今天给大家介绍loguru
,loguru
库的使用可以说是十分简单,希望通过本文大家再也不用通过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模块内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341