python dictConfig封装自定义日志器优化(三)

之前使用dictConfig写了自定义日志器的封装,但感觉不是很好,责任划分不明确,边在实践中进行优化,把日志的一部分配置(如日志文件名、路径等)摘出来放在项目配置文件中,其他配置依旧放在yaml文件中维护。

如有不对或可优化的点,欢迎指出!

日志器封装demo

1. 从项目配置文件中读取日志相关配置内容

  • content of src __init__.py
# content of src __init__.py

# -*- coding: utf-8 -*-
# @Time    : 2020/11/15 2:51 下午
# @Author  : holidaylzz

import os
import jsonpath
import yaml.scanner

SETTING_DIR = '项目配置文件绝对路径'

# 单例,项目配置文件
with open(file=SETTING_DIR, mode='r') as file:
    setting_content = yaml.safe_load(file.read())

    
def __load_logfile_config():
    """
    读取项目日志配置
    :return:
    """
    # 项目绝对路径
    project_dir = jsonpath.jsonpath(setting_content, '$.project.dir')
    if not project_dir:
        raise TypeError('project dir error,please check setting file!')
    # 改变当前目录至项目目录
    os.chdir(project_dir[0])

    # logging.yaml文件
    logging_yaml_dir = jsonpath.jsonpath(setting_content, '$.log_config.logging_yml_dir')
    if not logging_yaml_dir:
        raise TypeError('logging_yml_dir error,please check setting file!')
    logging_yaml_abs_dir = os.path.abspath(loggin
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值