溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何在Python 中使用loguru日志框架

發(fā)布時(shí)間:2021-05-13 16:11:07 來(lái)源:億速云 閱讀:324 作者:Leah 欄目:開(kāi)發(fā)技術(shù)

如何在Python 中使用loguru日志框架?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來(lái)學(xué)習(xí)下,希望你能有所收獲。

安裝

pip install loguru

1、輸出日志

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

終端執(zhí)行后出現(xiàn)帶顏色的日志,挺酷的

如何在Python 中使用loguru日志框架

2、輸出到文件

from loguru import logger

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

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

目錄下多出一個(gè)日志文件 :file_2019-03-14_19-53-25_661314.log

如何在Python 中使用loguru日志框架

3、日志規(guī)則

設(shè)置日志格式,過(guò)濾器,日志級(jí)別

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")    # 文件過(guò)大就會(huì)重新生成一個(gè)文件
logger.add("file_2.log", rotation="12:00")     # 每天12點(diǎn)創(chuàng)建新文件
logger.add("file_3.log", rotation="1 week")    # 文件時(shí)間過(guò)長(zhǎng)就會(huì)創(chuàng)建新文件

logger.add("file_X.log", retention="10 days")  # 一段時(shí)間后會(huì)清空

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

5、其他參數(shù)

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

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

6、時(shí)間格式化

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/

7、在工程中創(chuàng)建多個(gè)文件處理器對(duì)象并解決中文亂碼問(wèn)題

# coding=utf-8
import os
import sys
from loguru import logger

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

log_file_path = os.path.join(BASE_DIR, 'Log/my.log')
err_log_file_path = os.path.join(BASE_DIR, 'Log/err.log')

logger.add(sys.stderr, format="{time} {level} {message}", filter="my_module", level="INFO")
# logger.add(s)
logger.add(log_file_path, rotation="500 MB", encoding='utf-8')  # Automatically rotate too big file
logger.add(err_log_file_path, rotation="500 MB", encoding='utf-8',
           level='ERROR')  # Automatically rotate too big file
logger.debug("That's it, beautiful and simple logging!")
logger.debug("中文日志可以不")
logger.error("嚴(yán)重錯(cuò)誤")

如何在Python 中使用loguru日志框架

如何在Python 中使用loguru日志框架

Python的優(yōu)點(diǎn)有哪些

1、簡(jiǎn)單易用,與C/C++、Java、C# 等傳統(tǒng)語(yǔ)言相比,Python對(duì)代碼格式的要求沒(méi)有那么嚴(yán)格;2、Python屬于開(kāi)源的,所有人都可以看到源代碼,并且可以被移植在許多平臺(tái)上使用;3、Python面向?qū)ο?,能夠支持面向過(guò)程編程,也支持面向?qū)ο缶幊蹋?、Python是一種解釋性語(yǔ)言,Python寫(xiě)的程序不需要編譯成二進(jìn)制代碼,可以直接從源代碼運(yùn)行程序;5、Python功能強(qiáng)大,擁有的模塊眾多,基本能夠?qū)崿F(xiàn)所有的常見(jiàn)功能。

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI