diff --git a/docs/testing-progress.md b/docs/testing-progress.md index 15e864a..a188ea5 100644 --- a/docs/testing-progress.md +++ b/docs/testing-progress.md @@ -3665,3 +3665,4 @@ git diff --check - 右上角预警中心新增“系统监控告警”及数量/严重数,读取独立 Prometheus 活动告警汇总并跳转活动告警锚点;继续使用 `Promise.allSettled` 隔离签名、安全与监控域故障。安全检测页移除重复大号标题,说明明确使用 Fail2ban。 - 新增 migration `20260814173000_add_infrastructure_alert_settings`。本机 Prisma Client 生成、前后端 TypeScript 与 API 正式编译已通过;测试机恢复资产、migration、Prometheus规则校验、真实告警数据、浏览器验收和提交/部署结果待本轮后续补记。 - 首次测试机规则验收发现 Redis 未配置 `maxmemory` 时除零结果会误触发 Critical pending,立即补回 `redis_memory_max_bytes > 0` 固定保护,并补回 API 5xx 窗口至少 5 次错误的最低样本门槛;该真实验收缺陷未按通过处理。 +- 第二次真实应用验证发现 API 原子 rename 后的规则文件未继承 `prometheus` 组,Prometheus reload 返回 500;数据库按设计保持旧生效版本并标记 failed。安装器将托管目录修正为 2750 SGID,确保新文件继承 `prometheus` 组,随后必须以同一真实配置重试并验证 effective。 diff --git a/tools/monitoring/install-prometheus-monitoring.sh b/tools/monitoring/install-prometheus-monitoring.sh index c2d56f4..c937ef5 100644 --- a/tools/monitoring/install-prometheus-monitoring.sh +++ b/tools/monitoring/install-prometheus-monitoring.sh @@ -53,7 +53,8 @@ BEGIN { ' "$SCRIPT_DIR/cmpp-alerts.yml" > /etc/prometheus/cmpp-alerts.yml chown root:root /etc/prometheus/cmpp-alerts.yml chmod 0644 /etc/prometheus/cmpp-alerts.yml -install -d -o cmpp-api -g prometheus -m 0750 /var/lib/cmpp-platform/monitoring +# SGID ensures API原子rename生成的新规则继续继承prometheus组,否则reload会因不可读返回500。 +install -d -o cmpp-api -g prometheus -m 2750 /var/lib/cmpp-platform/monitoring if [[ ! -f /var/lib/cmpp-platform/monitoring/cmpp-managed-alerts.yml ]]; then install -o cmpp-api -g prometheus -m 0640 "$SCRIPT_DIR/cmpp-managed-alerts.yml" /var/lib/cmpp-platform/monitoring/cmpp-managed-alerts.yml fi