# -*- coding:utf-8 -*- # 配置文件初始化 # 主要是一些 db 的初始化创建 # 简单 Class 类函数的 初始化 import asyncio import json import logging import os from concurrent.futures import ThreadPoolExecutor from configparser import ConfigParser from logging.handlers import TimedRotatingFileHandler from os.path import dirname import uvloop from requests import adapters adapters.DEFAULT_POOLSIZE = 100000 asyncio.set_event_loop_policy(uvloop.EventLoopPolicy()) class CfgBaseInit(object): """ config: 配置文件对象 project_name: 项目名称 start_mode: 项目启动模式 """ config = ConfigParser() config.read(os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), "config", "config.ini")) project_name = config.get("CONFIG", "project_name") project_path = dirname(dirname(__file__)) bind = config.get("CONFIG", "host") class Logger(object): # 日志 log_path = CfgBaseInit.config.get("LOG", "log_path") when = CfgBaseInit.config.get("LOG", "when") backupCount = int(CfgBaseInit.config.get("LOG", "backupCount")) logging.basicConfig( format='%(asctime)s %(name)s %(process)d %(thread)d %(threadName)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s') logger = logging.getLogger(CfgBaseInit.project_name) logger.setLevel(logging.DEBUG) # 输出到文件 handler = TimedRotatingFileHandler(log_path, when=when, backupCount=backupCount) logger.addHandler(handler) logger = Logger.logger