一、loguru的介紹
Loguru是一個輕量級、易於使用和靈活的Python日誌記錄器。它為Python應用程序提供了強大的日誌記錄定製功能,使其易於閱讀和解決問題。
Loguru最初由邁克爾·加洛維克(Michael Gorelik)於2018年開發,代碼倉庫託管在Github上。源碼使用MIT許可證進行開源,因此可以免費使用和修改。
二、快速上手
使用Loguru非常簡單,只需要安裝並導入它就可以開始記錄日誌了。 首先,使用以下命令在終端或命令提示符窗口中安裝Loguru:
pip install loguru
然後,啟動Python解釋器並導入Loguru:
from loguru import logger
logger.debug("這是調試信息")
logger.info("這是一條常規信息")
logger.warning("這是一條警告信息")
logger.error("這是一條錯誤信息")
logger.critical("這是一條致命錯誤信息")
使用這些函數記錄日誌後,您可以在控制台中看到相應的消息。Loguru還支持在文件中記錄消息。
三、常用功能介紹
1.配置
Loguru允許您自定義記錄器配置,包括日誌級別、格式、文件輸出等。以下示例演示了如何使用配置文件設置日誌記錄選項:
from loguru import logger
logger.configure("logging_config.json")
該配置文件包含以下內容:
{
"handlers": [
{"sink": "./logs/all.log", "level": "TRACE", "rotation": "100 MB", "encoding": "utf8"},
{"sink": "./logs/info.log", "level": "INFO", "rotation": "100 MB", "encoding": "utf8"},
{"sink": "./logs/warning.log", "level": "WARNING", "rotation": "100 MB", "encoding": "utf8"}
],
"extra": {"user": "joe", "app": "myapp"}
}
在此配置文件中,我們將消息分為三個文件:all.log、info.log和warning.log。 這些文件將輪流記錄,以確保日誌文件不會變得太大。我們還添加了兩個額外的變數以幫助我們識別日誌記錄所屬的用戶和應用程序。
2.過濾器
Loguru還支持篩選器功能,這將允許我們根據特定的條件記錄或忽略消息。以下代碼演示如何將所有的warning.messages記錄到warning.log文件中:
from loguru import logger
logger.add("./logs/warning.log", filter=lambda record: record["level"].name == "WARNING")
3.非同步記錄
Loguru支持非同步記錄,這在處理大量消息時可以幫助提高性能。以下代碼演示如何將非同步記錄與過濾器一起使用:
from loguru import logger
logger.add("./logs/info.log", filter=lambda record: record["level"].name == "INFO", enqueue=True)
四、總結
Loguru是一個簡單而靈活的Python日誌記錄庫,它提供了許多定製選項以及性能優化功能。 使用Loguru,您可以輕鬆地記錄和管理Python應用程序中的日誌信息,並以易於理解的方式查看它們,無需專業知識。 因此,值得你一試。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/280558.html