refactor: init logger by config file instead function params
This commit is contained in:
14
src/main.py
14
src/main.py
@@ -6,9 +6,7 @@ import argparse
|
||||
from venv import logger
|
||||
import uvicorn
|
||||
from app.api import api
|
||||
from utils import obs, ocr, vsdb
|
||||
from utils.config import get_instance as get_config, init as init_config
|
||||
from utils.logger import init as init_logger
|
||||
from utils import obs, ocr, vsdb, logger, config
|
||||
from storage import people_store
|
||||
|
||||
# 主函数
|
||||
@@ -17,16 +15,14 @@ def main():
|
||||
parser = argparse.ArgumentParser(description='IF.u 服务')
|
||||
parser.add_argument('--config', type=str, default=os.path.join(main_path, '../configuration/test_conf.ini'), help='配置文件路径')
|
||||
args = parser.parse_args()
|
||||
init_logger(log_level=logging.DEBUG)
|
||||
logger.info(f"args.config: {args.config}")
|
||||
init_config(args.config)
|
||||
config = get_config()
|
||||
print(config.sections())
|
||||
config.init(args.config)
|
||||
logger.init()
|
||||
obs.init()
|
||||
ocr.init()
|
||||
vsdb.init()
|
||||
people_store.init()
|
||||
port = config.getint('web_service', 'server_port', fallback=8099)
|
||||
conf = config.get_instance()
|
||||
port = conf.getint('web_service', 'server_port', fallback=8099)
|
||||
uvicorn.run(api, host="127.0.0.1", port=port)
|
||||
|
||||
if __name__ == "__main__":
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
import logging
|
||||
import os
|
||||
from datetime import datetime
|
||||
from .config import get_instance as get_config
|
||||
|
||||
# 定义颜色代码
|
||||
class Colors:
|
||||
@@ -35,7 +36,13 @@ class ColoredConsoleHandler(logging.StreamHandler):
|
||||
self.stream.write(f"{color}{message}{Colors.RESET}\n")
|
||||
self.flush()
|
||||
|
||||
def init(log_dir="logs", log_file="log", log_level=logging.INFO, console_log_level=logging.DEBUG):
|
||||
def init():
|
||||
config = get_config()
|
||||
log_dir = config.get("log", "log_dir", fallback="logs")
|
||||
log_file = config.get("log", "log_file", fallback="if.u.service")
|
||||
log_level = config.get("log", "log_level", fallback=logging.INFO)
|
||||
console_log_level = config.get("log", "console_log_level", fallback=logging.DEBUG)
|
||||
|
||||
# 创建logs目录(如果不存在)
|
||||
if not os.path.exists(log_dir):
|
||||
os.makedirs(log_dir)
|
||||
|
||||
Reference in New Issue
Block a user