[英]Loguru callback function when an error is logged
我正在將桌面應用程序從 Python 的標准庫日志記錄移動到 Loguru,並希望在用戶界面中有一個包含日志記錄信息的文本框。
有沒有辦法掛鈎 Loguru 錯誤級別日志記錄,允許將日志消息發送到回調 function? 這將允許我使用最新的錯誤消息更新用戶界面。 例如,
from loguru import logger
def error_callback(msg: str):
# Do something with the error message
pass
logger.add_callback(error_callback) # <-- Does something like this exist?
# So when I do this...
logger.error("Oh noes")
# ... the callback is called with the argument `"Oh noes"`
您不能只為錯誤添加回調,但您可以為每個日志添加回調,並在其中檢查它是否是錯誤。 這個想法與適配器在 stdlib 日志記錄中所做的相同,唯一的區別是 loguru 稱之為patch 。
from loguru import logger
def error_callback(record):
if record['level'].name == 'ERROR':
print('logging an error')
# the log message is available as: record['message']
logger = logger.patch(error_callback)
logger.error('error')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.