refactor(config): 重构配置模块并优化应用依赖注入
- 将配置相关类移动到model模块 - 实现依赖注入容器管理各组件依赖关系 - 重构配置加载逻辑支持多层级键值查找 - 更新主应用入口支持命令行参数解析 - 统一日志输出格式替换原有打印语句 - 引入钻井实时数据模型简化数据处理 - 移除硬编码字段映射改用动态配置方式 - 优化数据库写入逻辑基于新的数据模型
This commit is contained in:
53
main.py
53
main.py
@@ -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()
|
||||
|
||||
Reference in New Issue
Block a user