4.0 KiB
4.0 KiB
Architecture: Gpulse.WCT.DataAnalyzer
无线充电 FOD(异物检测)日志数据采集系统,从日志文件中解析 Qfod 和 Ploss 数据并存储到数据库
文档索引
| 文档 | 说明 |
|---|---|
| 技术选型 | 技术栈总览、决策记录 |
| 模块划分 | 模块总览、分层架构、依赖关系 |
| 安全架构 | 认证方案、数据安全 |
| 解析器设计 | Qfod/Ploss 解析器详细设计 |
| 数据处理流程 | 解析流程、批量写入、错误处理 |
| 配置管理 | 配置文件、配置类定义 |
| CLI 命令设计 | 命令行接口定义 |
| 数据库切换支持 | SQLite/PostgreSQL 切换方案 |
架构图
┌─────────────────────────────────────────────────────────────┐
│ CLI Entry Point │
│ (Program.cs / System.CommandLine) │
├─────────────────────────────────────────────────────────────┤
│ Service Layer │
├─────────────────────────────────────────────────────────────┤
│ ParseService │ ErrorHandlingService │ ThresholdCalc │
├─────────────────────────────────────────────────────────────┤
│ Parser Layer │
├─────────────────────────────────────────────────────────────┤
│ QfodParser │ PlossParser │ LogFileReader │
├─────────────────────────────────────────────────────────────┤
│ Data Layer │
├─────────────────────────────────────────────────────────────┤
│ Models │ WctMinerDbContext │ IDbContextFactory │
├─────────────────────────────────────────────────────────────┤
│ Infrastructure │
├─────────────────────────────────────────────────────────────┤
│ Configuration │ Serilog │ AppSettings │
└─────────────────────────────────────────────────────────────┘
核心设计原则
| 原则 | 说明 |
|---|---|
| 技术栈 | .NET 8.0 LTS + C# 12.0 + EF Core 8.0 |
| 数据库 | SQLite(当前)/ PostgreSQL(后续),配置切换 |
| 解析模式 | 批处理,正则表达式匹配 |
| ORM 模式 | Code First,支持迁移自动化 |
| CLI 框架 | System.CommandLine,命令模式 |
假设/歧义标注
| 标注 | 内容 |
|---|---|
| [A] | 使用 .NET 8.0 LTS 版本 |
| [A] | 初期使用 SQLite,架构支持切换 PostgreSQL |
| [?] | 增量解析策略需确认 |
| [?] | 多次解析同一文件的处理策略需确认 |