Skip to content

Commit 9161e19

Browse files
authored
Merge pull request #12 from flashcatcloud/rum/alert
feat: update rum issue alert docs
2 parents 9fa2413 + 0904216 commit 9161e19

File tree

2 files changed

+136
-72
lines changed

2 files changed

+136
-72
lines changed

zh/rum/best-practices/alert-noise-reduction.mdx

Lines changed: 56 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,23 @@ Flashduty RUM 提供了从数据过滤、告警分级到 Flashduty 告警处理
99

1010
本文将介绍 RUM 告警配置的核心原则和典型场景方案,帮助您快速减少无效告警干扰。
1111

12+
<Info>
13+
本文涉及的过滤和分级配置均在控制台「应用管理」中完成:选择目标应用,点击左侧「告警设置」即可配置。详细配置说明请参考
14+
[Issue 告警](/zh/rum/error-tracking/issue-alerts)
15+
</Info>
16+
17+
![2026-03-13-15-08-11](https://docs-cdn.flashcat.cloud/imges/png/7fbb901611a71dd559da8d59c6251472.png)
18+
1219
## 告警处理链路
1320

1421
RUM 告警从 Error 产生到通知到人,经过以下四层处理:
1522

16-
| 层级 | 配置位置 | 核心作用 |
17-
|------|----------|----------|
18-
| ① 数据过滤 | RUM 应用 → 告警设置 | 在源头排除不需要的 Error,减少无效 Issue |
19-
| ② 告警分级 | RUM 应用 → 告警设置 | 根据 Error 属性设定 Issue 优先级 |
20-
| ③ 告警处理 | Flashduty 集成 → 告警处理 | 基于 Issue 维度做优先级调整、丢弃/抑制 |
21-
| ④ 告警分派 | Flashduty 协作空间 | 路由到团队、通知值班人员 |
23+
| 层级 | 配置位置 | 核心作用 |
24+
| ---------- | ------------------------- | ---------------------------------------- |
25+
| ① 数据过滤 | RUM 应用 → 告警设置 | 在源头排除不需要的 Error,减少无效 Issue |
26+
| ② 告警分级 | RUM 应用 → 告警设置 | 根据 Error 属性设定 Issue 优先级 |
27+
| ③ 告警处理 | Flashduty 集成 → 告警处理 | 基于 Issue 维度做优先级调整、丢弃/抑制 |
28+
| ④ 告警分派 | Flashduty 协作空间 | 路由到团队、通知值班人员 |
2229

2330
配置时建议**从上到下依次设置**:先过滤噪音,再分级告警,最后在 Flashduty 侧做精细化处理。
2431

@@ -33,22 +40,26 @@ RUM 告警从 Error 产生到通知到人,经过以下四层处理:
3340
- 错误堆栈 包含 `chrome-extension://`
3441
- 错误堆栈 包含 `moz-extension://`
3542
- 错误堆栈 包含 `cdn.third-party.com`
43+
3644
</Accordion>
3745
<Accordion title="已知无害错误">
3846
某些错误频繁出现但不影响用户体验:
3947

4048
- 错误消息 包含 `ResizeObserver loop`
4149
- 错误消息 包含 `Script error`
50+
4251
</Accordion>
4352
<Accordion title="非核心环境错误">
4453
如果您只关注生产环境的告警,可以过滤其他环境的错误:
4554

4655
- 环境 不包含 `production`
56+
4757
</Accordion>
4858
</AccordionGroup>
4959

5060
<Tip>
51-
被过滤的 Error 不会参与 Issue 聚合和告警,但数据仍然保留,您可以在查看器中通过筛选条件查看这些被过滤的错误。
61+
被过滤的 Error 不会参与 Issue
62+
聚合和告警,但数据仍然保留,您可以在查看器中通过筛选条件查看这些被过滤的错误。
5263
</Tip>
5364

5465
## 第二步:配置告警分级
@@ -57,11 +68,11 @@ RUM 告警从 Error 产生到通知到人,经过以下四层处理:
5768

5869
### 分级策略建议
5970

60-
| 优先级 | 适用场景 | 期望响应时间 |
61-
|--------|----------|--------------|
62-
| **P0(Critical)** | 核心业务中断、VIP 用户受影响、生产环境崩溃 | 立即响应 |
63-
| **P1(Warning)** | 重要功能异常、核心页面错误 | 当日处理 |
64-
| **P2(Info)** | 非核心功能错误、低影响问题 | 按计划处理 |
71+
| 优先级 | 适用场景 | 期望响应时间 |
72+
| ------------------ | ------------------------------------------ | ------------ |
73+
| **P0(Critical)** | 核心业务中断、VIP 用户受影响、生产环境崩溃 | 立即响应 |
74+
| **P1(Warning)** | 重要功能异常、核心页面错误 | 当日处理 |
75+
| **P2(Info)** | 非核心功能错误、低影响问题 | 按计划处理 |
6576

6677
### 推荐规则配置
6778

@@ -73,12 +84,14 @@ RUM 告警从 Error 产生到通知到人,经过以下四层处理:
7384

7485
- 条件:环境 包含 `production`,且 是否崩溃 包含 `true`
7586
- 告警级别:P0
87+
7688
</Step>
7789
<Step title="VIP 用户错误 → P0">
7890
VIP 用户的体验直接关系到商业价值。
7991

8092
- 条件:用户 ID 包含 `vip`(或通过自定义字段 `context.user.level` 包含 `vip` 来匹配)
8193
- 告警级别:P0
94+
8295
</Step>
8396
<Step title="核心页面错误 → P1">
8497
支付、登录、结算等核心业务页面的错误需要优先处理。
@@ -87,25 +100,27 @@ RUM 告警从 Error 产生到通知到人,经过以下四层处理:
87100
- 告警级别:P1
88101

89102
可以为每个核心页面创建单独的规则,或在同一规则中使用多个匹配值。
103+
90104
</Step>
91105
<Step title="其他错误 → P2(默认)">
92106
未匹配任何规则的错误自动归为 P2,按常规流程处理。无需额外配置。
93107
</Step>
94108
</Steps>
95109

96110
<Tip>
97-
规则数量建议控制在 3-6 条,覆盖最关键的场景即可。过多的规则会增加维护成本,且容易导致优先级混乱。
111+
规则数量建议控制在 3-6
112+
条,覆盖最关键的场景即可。过多的规则会增加维护成本,且容易导致优先级混乱。
98113
</Tip>
99114

100115
## 第三步:在 Flashduty 中精细化处理
101116

102117
RUM 侧的告警分级基于单个 Error 的属性,如需基于 Issue 的整体影响做进一步处理,可以在 Flashduty 的[告警处理 Pipeline](/zh/on-call/integration/alert-integration/alert-pipelines) 中配置。
103118

104-
| 处理场景 | 配置方式 |
105-
|----------|----------|
106-
| 抑制重复告警 | 同一 `alert_key` 在 1 小时内只告警一次 |
119+
| 处理场景 | 配置方式 |
120+
| -------------- | ------------------------------------------------------------------------------ |
121+
| 抑制重复告警 | 同一 `alert_key` 在 1 小时内只告警一次 |
107122
| 自定义告警标题 | 模板示例:`[RUM] [{{Labels.env}}] {{Labels.error_type}} - {{Labels.view_url}}` |
108-
| 低影响错误降级 |`labels.affected_users` < 5 时,将严重程度更新为 Info |
123+
| 低影响错误降级 |`labels.affected_users` < 5 时,将严重程度更新为 Info |
109124

110125
## 典型场景方案
111126

@@ -119,6 +134,7 @@ RUM 侧的告警分级基于单个 Error 的属性,如需基于 Issue 的整
119134
| 告警分级 | P0:支付页面错误、崩溃;P1:商品详情页/购物车错误 |
120135
| 告警处理 | 抑制窗口:30 分钟;标题模板包含页面路径 |
121136
| 告警分派 | P0 → 短信+电话通知,P1 → IM 通知 |
137+
122138
</Tab>
123139
<Tab title="SaaS 应用">
124140
SaaS 应用需要关注不同租户的体验差异。
@@ -129,6 +145,7 @@ RUM 侧的告警分级基于单个 Error 的属性,如需基于 Issue 的整
129145
| 告警分级 | P0:企业版租户错误(通过 `context.tenant.plan` 匹配);P1:核心功能页面错误 |
130146
| 告警处理 | 标题模板包含租户信息;低影响告警降级 |
131147
| 告警分派 | 按团队分配到不同协作空间 |
148+
132149
</Tab>
133150
<Tab title="内容型网站">
134151
内容型网站对可用性要求相对宽松,重点关注加载和渲染问题。
@@ -139,6 +156,7 @@ RUM 侧的告警分级基于单个 Error 的属性,如需基于 Issue 的整
139156
| 告警分级 | P0:崩溃;P1:首页/搜索页错误 |
140157
| 告警处理 | 抑制窗口:1 小时;影响用户数 < 10 的告警降级 |
141158
| 告警分派 | P0 → IM 通知,P1/P2 → 邮件通知 |
159+
142160
</Tab>
143161
</Tabs>
144162

@@ -160,6 +178,7 @@ RUM 侧的告警分级基于单个 Error 的属性,如需基于 Issue 的整
160178
- **Flashduty Pipeline**:基于 Issue 的整体信息(影响用户数、错误数量等),适合做更全面的评估
161179

162180
建议在 RUM 侧设定基础优先级,在 Flashduty 侧做补充调整。
181+
163182
</Accordion>
164183
<Accordion title="默认告警行为会改变吗?">
165184
不会。如果不配置任何过滤规则和告警分级,所有 Error 仍然会聚合为 Issue 并以默认严重程度投递到 Flashduty。现有行为完全保持不变。
@@ -169,16 +188,32 @@ RUM 侧的告警分级基于单个 Error 的属性,如需基于 Issue 的整
169188
## 延伸阅读
170189

171190
<CardGroup cols={2}>
172-
<Card title="Issue 告警" icon="bell" href="/zh/rum/error-tracking/issue-alerts">
191+
<Card
192+
title="Issue 告警"
193+
icon="bell"
194+
href="/zh/rum/error-tracking/issue-alerts"
195+
>
173196
告警触发条件、自定义分级和数据过滤的完整配置说明
174197
</Card>
175-
<Card title="告警处理 Pipeline" icon="filter" href="/zh/on-call/integration/alert-integration/alert-pipelines">
198+
<Card
199+
title="告警处理 Pipeline"
200+
icon="filter"
201+
href="/zh/on-call/integration/alert-integration/alert-pipelines"
202+
>
176203
在集成层对告警进行清洗、转换和过滤
177204
</Card>
178-
<Card title="告警降噪" icon="volume-slash" href="/zh/on-call/channel/noise-reduction">
205+
<Card
206+
title="告警降噪"
207+
icon="volume-slash"
208+
href="/zh/on-call/channel/noise-reduction"
209+
>
179210
在协作空间层面聚合和抑制告警
180211
</Card>
181-
<Card title="告警分派" icon="route" href="/zh/on-call/channel/escalation-rule">
212+
<Card
213+
title="告警分派"
214+
icon="route"
215+
href="/zh/on-call/channel/escalation-rule"
216+
>
182217
配置分派策略,将告警路由到正确的值班人员
183218
</Card>
184219
</CardGroup>

0 commit comments

Comments
 (0)