fix: deduplicate filesystem mounts in monitoring

This commit is contained in:
hectorzhao
2026-08-31 23:39:24 +08:00
parent 12668cee87
commit 1f2dfb5caf
14 changed files with 246 additions and 51 deletions
+11
View File
@@ -4227,3 +4227,14 @@ git diff --check
- 外部首页、两端登录入口及API健康均HTTP 200;主JS/CSS和8个改动页面JS实际HTTP下载SHA全部与服务器产物一致。主资源 `index-BaM_U9uq.js` SHA为 `b14c2ee21f80d718e6f78289cc6e676f215c2e16bd24712202df731aeadb3d6f``index-D8PbKTXI.css` SHA为 `86b17c3845da62022861df97536db00df9d241ceac9677434d7028286e0ac0ca`
- 本轮API51套581项通过;前端初次fork工作进程启动超时,改threads/单worker重跑8文件45项通过;前后端TypeScript、Vite、依赖安全、部署契约、包体积、bash语法及隔离缺挂载负向检查通过。browser技能路径中Chrome标签发现可用,但旧标签DOM读取及新标签导航均超时,真实页面身份/非空/错误遮罩/控制台/截图/交互六项均未完成;没有切换未授权的浏览器控制替代方式。
- 线上证据:`/tmp/cmpp-preprod-sixfix-activate.log``/tmp/cmpp-preprod-sixfix-backend-after.json``/tmp/cmpp-preprod-sixfix-postcheck.json`(保留首次日志失败)和 `/tmp/cmpp-preprod-sixfix-stability.json`。除明确接续的三份迁移保护脚本外,原有4份修改文档及4项未跟踪文件仍未提交;发布记录采用独立追加暂存,没有夹带另一会话的迁移文档。
## 2026-08-31 磁盘绑定挂载去重修复(仅本地提交,待授权发布)
- 用户要求修复并提交,下个版本发布须另等指令。本轮基于`main / 12668cee87400fdacf2d5609e2f18a75caa71cbf`,重新核验Git和最近进度;保留另一会话4份修改文档及4项未跟踪文件,不推送、不部署、不重载规则、不重启服务。
- 根因:前次“全部磁盘”按`instance/device/mountpoint/fstype`区分,把同一数据盘的`/data`及三个存储绑定路径当成四块盘。现改为`instance/device/fstype`独立文件系统标识,卡片、瞬时使用率、趋势和容量/inode规则一致去重;总容量取最大值、可用容量取最小值,不累加别名容量,不按容量相同误合并不同设备/主机/文件系统。
- API新增`mountpoints`保留所有路径,主路径按层级、长度及字典序稳定选择;前端一张卡片展示主路径,原生可展开区域展示其他挂载点,趋势计数改为文件系统。保留系统盘及EFI等独立分区、根盘兼容字段,采集缺失不补零。未变更业务数据、数据库结构、迁盘绑定和存储保护配置。
- 23:35(北京时间)对预生产Prometheus执行只读即时/范围查询:原始容量6条,聚合后3个文件系统(根、EFI、数据盘),每个趋势61点;数据盘容量`105087164416`字节,四个路径只产生一条使用率/可用容量及趋势。此证据验证新查询,不代表线上API或页面已升级。
- 候选基础规则63条、托管规则20条通过线上现有`promtool check rules /dev/stdin`只读语法校验;未写入线上规则文件。补充生成规则与基础容量/inode规则表达式一致性测试;发布时仍须按当前有效阈值生成托管规则、移除实际加载的同名基础规则并核验health。聚合会改变告警标签、指纹及for计时,不能承诺保留原告警已读状态或连续计时。
- 本地全量API 51套584项、前端9文件48项通过;前后端TypeScript检查、Vite构建、依赖安全、部署契约、包体积门禁及`git diff --check`通过。Vite仍提示既有Chart分块超过500kB,但入口gzip约107.39KiB,符合250KiB预算。新增回归覆盖绑定路径、乱序、主路径缺失、不同主机/设备/类型、缺失样本及展开交互;更新`TC-PORTAL-008/009`,新增`TC-DISK-DEDUP-001..004`
- 本轮仅本地单元/组件回归及真实采集查询核验,没有部署新API/页面;登录浏览器视觉、控制台、真实页面展开及告警加载验收留待下一次明确授权发布,不以测试替身或构建通过冒充真实页面验收。既存日报5秒事务超时不在本轮修复范围。
- 提交仅包含本轮监控源码、规则、测试用例和本节进度追加;其他会话的迁盘文档及进度追加不纳入。本轮没有发送、补发、重投短信,也没有修改余额、通道或客户配置;待下一版本指令后再决定推送和目标环境发布。