基本使用
from loguru import logger
logger.debug('aaaaa')
logger.info('bbbbb')
logger.warning('ccccc')
logger.error('ddddd')
logger.critical('eeeee')
上面的代码运行结果如下:
C:\Python39\python.exe C:/Safe/test.py
2021-07-23 10:44:46.600 | DEBUG | __main__:<module>:3 - aaaaa
2021-07-23 10:44:46.601 | INFO | __main__:<module>:4 - bbbbb
2021-07-23 10:44:46.601 | WARNING | __main__:<module>:5 - ccccc
2021-07-23 10:44:46.601 | ERROR | __main__:<module>:6 - ddddd
2021-07-23 10:44:46.601 | CRITICAL | __main__:<module>:7 - eeeee
Process finished with exit code 0
可以看到其默认的输出格式是上面的内容,有时间、级别、模块名、行号以及日志信息,不需要手动创建 logger,直接使用即可,如果想要输出到其他的位置,比如存为文件,例如将结果同时输出到一个 runtime.log 文件里面,可以这么写:
from loguru import logger
logger.add('runtime.log')
logger.debug('this is a debug')
详细使用
rotation 配置
用了 loguru 我们还可以非常方便地使用 rotation 配置,比如我们想一天输出一个日志文件,或者文件太大了自动分隔日志文件,我们可以直接使用 add 方法的 rotation 参数进行配置
logger.add('runtime_{time}.log', rotation="500 MB")
通过这样的配置我们就可以实现每 500MB 存储一个文件,每个 log 文件过大就会新创建一个 log 文件。
retention 这个参数可以配置日志的最长保留时间。 比如我们想要设置日志文件最长保留 10 天,可以这么来配置:
logger.add('runtime.log', retention='10 days')
这样 log 文件里面就会保留最新 10 天的 log