python輸出彩色日志的實現(xiàn)
在開發(fā) Python 應(yīng)用程序時,日志是調(diào)試、監(jiān)控和追蹤問題的重要工具。然而,面對大量黑白日志信息,我們常常難以快速識別關(guān)鍵內(nèi)容。
幸運的是,借助 colorlog 這個第三方庫,我們可以輕松為日志添加顏色,讓不同級別的日志一目了然!
為什么需要彩色日志?
**提升可讀性:**錯誤(ERROR)用紅色、警告(WARNING)用黃色,一眼就能定位問題。
**提高效率:**在終端中快速區(qū)分日志級別,減少閱讀負(fù)擔(dān)。
**增強體驗:**開發(fā)階段的控制臺日志更友好,尤其適合本地調(diào)試。
所需依賴
首先,確保安裝以下兩個包:
pip install colorlog pyyaml
- colorlog:提供帶顏色的日志格式化器
- pyyaml:用于加載 YAML 格式的配置文件。
日志配置詳解(YAML)
# 日志配置文件
# 配置日志版本、格式化器、處理器、日志記錄器和根日志記錄器
version: 1
disable_existing_loggers: false
# 格式化器配置
formatters:
# 彩色格式化器配置
colored:
(): colorlog.ColoredFormatter
format: "%(log_color)s%(asctime)s - %(name)s - %(levelname)s - %(message)s"
log_colors:
DEBUG: cyan
INFO: green
WARNING: yellow
ERROR: red
CRITICAL: red,bg_white
# 處理器配置
handlers:
# 控制臺處理器配置
console:
class: logging.StreamHandler
level: DEBUG
formatter: colored
stream: ext://sys.stdout
# 日志記錄器配置
loggers:
# 測試日志記錄器配置
log_test:
level: DEBUG
handlers: [console]
propagate: no
# 根日志記錄器配置
root:
level: INFO
handlers: [console]
加載配置并使用日志器
import logging.config
import yaml
# 加載 YAML 配置
with open('logging.yml', 'r', encoding='utf-8') as f:
config = yaml.safe_load(f.read())
logging.config.dictConfig(config)
# 獲取自定義日志器
logger = logging.getLogger('log_test')
# 測試不同級別的日志
logger.debug("這是一條調(diào)試信息")
logger.info("程序正常運行")
logger.warning("注意:這是一條警告")
logger.error("發(fā)生了一個錯誤")
logger.critical("嚴(yán)重錯誤!系統(tǒng)即將崩潰!")
運行效果

總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于pycharm中pip版本10.0無法使用的解決辦法
近期在利用 pycharm 安裝第三方庫時會提示 pip 不是最新版本, 因此對 pip 進(jìn)行更新,但是生成最新版本之后, pip 中由于缺少 main 函數(shù),導(dǎo)致在 pycharm 中無法自動安裝第三方庫。本文就介紹一下如何解決2019-10-10
在python Numpy中求向量和矩陣的范數(shù)實例
今天小編就為大家分享一篇在python Numpy中求向量和矩陣的范數(shù)實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-08-08
django多個APP的urls設(shè)置方法(views重復(fù)問題解決)
今天小編就為大家分享一篇django多個APP的urls設(shè)置方法(views重復(fù)問題解決),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-07-07
python判斷計算機是否有網(wǎng)絡(luò)連接的實例
今天小編就為大家分享一篇python判斷計算機是否有網(wǎng)絡(luò)連接的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12
python不到50行代碼完成了多張excel合并的實現(xiàn)示例
這篇文章主要介紹了python不到50行代碼完成了多張excel合并的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05

