前言
最近研究了下新的日志管理方案庫,發(fā)覺loguru庫不錯纪岁,推薦給大家躲叼。
安裝loguru
pip install loguru
入門
from loguru import logger
logger.debug("我承認我很懶")
日志的級別
日志等級(level) | 描述 |
---|---|
DEBUG | 最詳細的日志信息蔬捷,典型應用場景是 問題診斷 |
INFO | 信息詳細程度僅次于DEBUG厉亏,通常只記錄關鍵節(jié)點信息董习,用于確認一切都是按照我們預期的那樣進行工作 |
WARNING | 當某些不期望的事情發(fā)生時記錄的信息(如,磁盤可用空間較低)叶堆,但是此時應用程序還是正常運行的 |
ERROR | 由于一個更嚴重的問題導致某些功能不能正常運行時記錄的信息 |
CRITICAL | 當發(fā)生嚴重錯誤阱飘,導致應用程序不能繼續(xù)運行時記錄的信息 |
如何寫入文件
只需要加一句話,就可以寫入到指定的日志文件虱颗。
from loguru import logger
logger.add("file.log")
logger.debug("我承認我很懶")
如何指定寫入文件的策略
logger.add("file.log", rotation="500 MB",
encoding='utf-8', level='INFO',
format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}"
)
- rotation:支持配置文件大小,時間蔗喂。本例子是實現每 500MB 存儲一個文件忘渔,每個 log 文件過大就會新創(chuàng)建一個 log 文件。
- level:日志的級別缰儿,其中DEBUG是最全的日志級別畦粮。
- format: 指定每一行日志的輸出格式。
更多玩法
- 配置文件的壓縮格式
logger.add('file.log', compression='zip')
- 異步寫入
配置在多進程同時往日志文件寫日志的時候使用隊列達到異步功效乖阵。
logger.add("somefile.log", enqueue=True)
喜歡本文的伙伴們宣赔,也可以關注我在今日頭條的頭條號testerzhang