refactor(config): 重构配置模块并优化应用依赖注入

- 将配置相关类移动到model模块
- 实现依赖注入容器管理各组件依赖关系
- 重构配置加载逻辑支持多层级键值查找
- 更新主应用入口支持命令行参数解析
- 统一日志输出格式替换原有打印语句
- 引入钻井实时数据模型简化数据处理
- 移除硬编码字段映射改用动态配置方式
- 优化数据库写入逻辑基于新的数据模型
This commit is contained in:
2026-03-12 10:41:26 +08:00
parent 6d13da4cc2
commit 6557479a2f
16 changed files with 783 additions and 589 deletions

53
main.py
View File

@@ -1,10 +1,55 @@
import argparse
import logging
def main():
logging.info("start app....")
from app import mqtt_mock, mqtt_sender, mqtt_subscriber, wits_sender
def configure_logging(level_name):
level = getattr(logging, str(level_name).upper(), logging.INFO)
logging.basicConfig(
level=level,
format="%(asctime)s %(levelname)s %(name)s - %(message)s",
)
if __name__ == '__main__':
def build_parser():
parser = argparse.ArgumentParser(description="tdEngine mqtt/wits mock application")
parser.add_argument("--log-level", default="INFO", help="Logging level")
subparsers = parser.add_subparsers(dest="command", required=True)
mqtt_mock_parser = subparsers.add_parser("mqtt-mock", help="Run MQTT mock service")
mqtt_mock.add_arguments(mqtt_mock_parser)
mqtt_sender_parser = subparsers.add_parser("mqtt-sender", help="Run MQTT sender")
mqtt_sender.add_arguments(mqtt_sender_parser)
mqtt_subscriber_parser = subparsers.add_parser("mqtt-subscriber", help="Run MQTT subscriber")
mqtt_subscriber.add_arguments(mqtt_subscriber_parser)
wits_sender_parser = subparsers.add_parser("wits-sender", help="Run WITS sender")
wits_sender.add_arguments(wits_sender_parser)
return parser
def main(argv=None):
parser = build_parser()
args = parser.parse_args(argv)
configure_logging(args.log_level)
logging.getLogger(__name__).info("start app command=%s", args.command)
if args.command == "mqtt-mock":
deps = mqtt_mock.build_mock_dependencies(args.config, data_file_override=args.data_file)
mqtt_mock.run_mock_service(args, deps)
elif args.command == "mqtt-sender":
deps = mqtt_sender.build_sender_dependencies(args.config)
mqtt_sender.run_sender(args, deps)
elif args.command == "mqtt-subscriber":
deps = mqtt_subscriber.build_subscriber_dependencies(args.config)
mqtt_subscriber.run_subscriber(args, deps)
elif args.command == "wits-sender":
deps = wits_sender.build_wits_sender_dependencies(args.config)
wits_sender.run_wits_sender(args, deps)
if __name__ == "__main__":
main()