__init__.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. # -*- coding:utf-8 -*-
  2. # 配置文件初始化
  3. # 主要是一些 db 的初始化创建
  4. # 简单 Class 类函数的 初始化
  5. import asyncio
  6. import logging
  7. import os
  8. from configparser import ConfigParser
  9. from logging.handlers import TimedRotatingFileHandler
  10. from os.path import dirname
  11. import uvloop
  12. from requests import adapters
  13. adapters.DEFAULT_POOLSIZE = 100000
  14. asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
  15. class CfgBaseInit(object):
  16. """
  17. config: 配置文件对象
  18. project_name: 项目名称
  19. start_mode: 项目启动模式
  20. """
  21. config = ConfigParser()
  22. config.read(os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), "config", "config.ini"))
  23. project_name = config.get("CONFIG", "project_name")
  24. project_path = dirname(dirname(__file__))
  25. bind = config.get("CONFIG", "host")
  26. class Logger(object):
  27. # 日志
  28. log_path = CfgBaseInit.config.get("LOG", "log_path")
  29. when = CfgBaseInit.config.get("LOG", "when")
  30. backupCount = int(CfgBaseInit.config.get("LOG", "backupCount"))
  31. logging.basicConfig(
  32. format='%(asctime)s %(name)s %(process)d %(thread)d %(threadName)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s')
  33. logger = logging.getLogger(CfgBaseInit.project_name)
  34. logger.setLevel(logging.DEBUG)
  35. # 输出到文件
  36. handler = TimedRotatingFileHandler(log_path, when=when, backupCount=backupCount)
  37. logger.addHandler(handler)
  38. logger = Logger.logger