当前位置: 首页 > 后端技术 > Python

Loguru基础教程

时间:2023-03-25 20:34:05 Python

Python模块Loguru基础教程#Author=Hanosnfromloguruimportlogger#打印不同类型的日志logger.debug("debugmessage")logger.info("infolevelmessage")logger.warning("warninglevelmessage")logger.critical("criticallevelmessage")#日志格式和存储日志级别logger.add("test.log",format="{time}|{level}|{message}",level="INFO")#sequenceLogger.add("test.log",serialize=True)#根据日志大小自动切日志,也可以根据时间切:rotation='00:00',rotation='1week',我们要设置日志文件最多保留10天,retention='10days'logger.add("test.log",rotation="500MB")#loguru还可以配置文件的压缩格式,比如asusingthezipfileformattosavelogger.add('runtime.log',compression='zip')#很多情况下,如果我们遇到运行错误,在打印日志的时候不小心没有配置Traceback的输出,很可能我们将无法追踪到错误的位置。但是使用loguru之后,我们可以使用它提供的装饰器直接记录Traceback,类似这样的配置:@logger.catchdefmy_function(x,y,z):#Anerror?反正是被抓了!return1/(x+y+z)#我们来做个测试。我们在调用的时候三个参数都传入0,直接导致除以0的错误,看看会发生什么:my_function(0,0,0)#运行后,可以发现日志中出现Traceback信息,并且为我们输出了当时的变量值,真是太神奇了!结果如下:>File"run.py",line15,in<module>my_function(0,0,0)└文件“/private/var/py/logurutest/demo5.py”,第13行,在my_function中返回1/(x+y+z)││└0│└0└0ZeroDivisionError:除以零