在开发 python 应用程序时,日志是调试、监控和追踪问题的重要工具。然而,面对大量黑白日志信息,我们常常难以快速识别关键内容。
幸运的是,借助 colorlog 这个第三方库,我们可以轻松为日志添加颜色,让不同级别的日志一目了然!
为什么需要彩色日志?
**提升可读性:**错误(error)用红色、警告(warning)用黄色,一眼就能定位问题。
**提高效率:**在终端中快速区分日志级别,减少阅读负担。
**增强体验:**开发阶段的控制台日志更友好,尤其适合本地调试。
所需依赖
首先,确保安装以下两个包:
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("这是一条调试信息")
logger.info("程序正常运行")
logger.warning("注意:这是一条警告")
logger.error("发生了一个错误")
logger.critical("严重错误!系统即将崩溃!")
运行效果

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。
发表评论