-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
[PRD] AIoT 告警规则能力增强——多条件组合、生命周期与分组支持
子仓库实现 Issue
| 仓库 | Issue | 说明 |
|---|---|---|
rymcu/mortise-aiot |
#20 | 条件模型、评估器、生命周期、设备分组、测试 |
rymcu/admin-aiot |
#6 | 告警规则表单与管理 UI 扩展 |
问题陈述
当前 Mortise AIoT 的 AlertRule 已经具备基本的阈值告警能力,但规则表达能力仍明显偏弱,难以支撑更复杂的工业与运维场景。
从用户视角看,主要问题有:
- 当前告警规则主要还是单阈值规则,无法表达多条件组合。
- 告警规则缺少生效期、暂停、失效等生命周期语义。
- 告警规则难以直接作用于设备分组,导致批量配置成本高。
- 规则域本身还不够成熟,如果现在就直接做
AlertRule → Scene迁移工具,会把表达能力不足的问题转移到自动化域中。
这意味着告警规则虽然已经“能触发”,但还没有达到“可编排、可批量、可运营”的成熟度。
解决方案
围绕现有 AlertRule 能力补齐一轮“规则增强”:
- 支持多条件组合(AND / OR)。
- 增加告警规则生命周期语义,例如生效期、暂停和失效。
- 支持设备分组应用规则。
- 增加时间窗口聚合与基础抑制能力,减少瞬时抖动误报。
- 扩展管理端表单与规则管理体验。
本期目标不是直接做迁移工具,而是先把告警域补到足够成熟,再决定与自动化的进一步融合方式。
用户故事
- 作为运维管理员,我希望配置多条件告警规则,以便减少单指标误报。
- 作为运维管理员,我希望规则只在特定时间段生效,以便贴合实际值守场景。
- 作为运维管理员,我希望把规则应用到设备分组,而不是逐台配置。
- 作为运维管理员,我希望支持时间窗口聚合,例如“5 分钟内连续 3 次异常才告警”。
- 作为技术支持,我希望告警规则和自动化场景的边界清晰,便于排障。
- 作为产品经理,我希望先把告警规则补成熟,再考虑是否提供迁移到自动化的工具。
实现决策
一、模块范围
mortise-aiot-domain:扩展条件模型和生命周期字段。mortise-aiot-application:实现规则评估器、时间窗口和分组匹配逻辑。mortise-aiot-admin:扩展创建 / 编辑 DTO 和管理接口。admin-aiot:扩展告警规则表单与管理页面。
二、条件增强策略
- 从单阈值规则扩展到多条件组合。
- 兼容现有规则格式,避免破坏已上线规则。
- 多条件组合优先支持 AND / OR,不在本期引入复杂表达式语言。
三、生命周期与分组
- 增加规则生效期、暂停和失效语义。
- 支持与设备分组联动,降低批量配置成本。
四、与自动化的边界
- 继续保留告警事件作为自动化的事件源。
- 本期不直接做迁移工具,只明确边界和兼容方向。
测试决策
- 后端覆盖多条件、生命周期、分组和时间窗口聚合。
- 前端覆盖规则表单、条件组合编辑、生命周期配置和错误提示。
- 至少保留一条端到端链路:设备遥测触发复合规则 → 告警事件产生 → 管理端可见。
垂直切片拆分
切片 1:多条件规则模型与评估器
覆盖的用户故事:1
验收标准:
- 支持多条件组合。
- 兼容现有单阈值规则。
切片 2:生命周期与设备分组
覆盖的用户故事:2、3
验收标准:
- 支持生效期、暂停和分组应用。
- 分组变化后规则作用范围正确。
切片 3:时间窗口聚合与基础抑制
覆盖的用户故事:4
验收标准:
- 支持简单聚合条件和重复告警抑制。
切片 4:管理端表单与联动边界
覆盖的用户故事:5、6
验收标准:
- 告警规则表单支持新字段与多条件编辑。
- 明确与自动化的联动边界,不引入迁移工具。
范围外
- AlertRule → Scene 自动迁移工具
- 告警大盘 / BI 统计
- 机器学习异常检测
- 多渠道通知体系重构
补充说明
这是跨仓库需求,提交后请保留本 PRD Issue 作为 Parent PRD,子仓库实现 Issue 统一引用本 Issue。
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels