天天看點

Python程式設計:loguru管理日志輸出安裝1、輸出日志2、輸出到檔案3、日志規則4、日志檔案5、其他參數6、時間格式化

項目位址 github: https://github.com/Delgan/loguru 文檔: https://loguru.readthedocs.io/en/stable/index.html

安裝

pip install loguru      

1、輸出日志

from loguru import logger

logger.debug("這是一條debug日志")      

終端執行後出現帶顔色的日志,挺酷的

Python程式設計:loguru管理日志輸出安裝1、輸出日志2、輸出到檔案3、日志規則4、日志檔案5、其他參數6、時間格式化

2、輸出到檔案

from loguru import logger

logger.add("file_{time}.log")

logger.debug("這是一條debug日志")
logger.info("這是一條info日志")      

目錄下多出一個日志檔案 :file_2019-03-14_19-53-25_661314.log

Python程式設計:loguru管理日志輸出安裝1、輸出日志2、輸出到檔案3、日志規則4、日志檔案5、其他參數6、時間格式化

3、日志規則

設定日志格式,過濾器,日志級别

from loguru import logger

logger.add("file.log", format="{time} {level} {message}", filter="", level="INFO")

logger.debug("這是一條debug日志")
logger.info("這是一條info日志")      

輸出

2019-03-14T20:01:25.392454+0800 INFO 這是一條info日志
      

4、日志檔案

檔案管理方式

logger.add("file_1.log", rotation="500 MB")    # 檔案過大就會重新生成一個檔案
logger.add("file_2.log", rotation="12:00")     # 每天12點建立新檔案
logger.add("file_3.log", rotation="1 week")    # 檔案時間過長就會建立新檔案

logger.add("file_X.log", retention="10 days")  # 一段時間後會清空

logger.add("file_Y.log", compression="zip")    # 儲存zip格式
      

5、其他參數

logger.add("somefile.log", enqueue=True)  # 異步寫入

logger.add("somefile.log", serialize=True)  # 序列化為json      

6、時間格式化

logger.add("file.log", format="{time:YYYY-MM-DD at HH:mm:ss} | {level} | {message}")      

配合notifiers子產品

github: 

https://github.com/notifiers/notifiers https://notifiers.readthedocs.io/en/latest/