1. 线上问题现象分类与影响评估

线上问题排查的第一步,是快速、准确地对现象进行分类和影响评估。只有当异常类型、监控指标与紧急度被清晰定义,后续的采集与定位才能具备优先级与方向性。本章围绕“现象识别→数据采集”前序环节,建立一套可直接落地的分类框架与判断规则。

1.1 异常类型:三域分类模型

根据线上实际故障场景,将异常划分为三大域:业务域、系统域、网络域。每个域对应不同的监控维度和排查入口。

异常域典型现象直接指标排查切入点
业务域订单失败、支付超时、数据不一致错误率、成功率、p99延迟业务日志、RPC trace、DB 慢查询
系统域CPU 满载、内存溢出、Full GC、频繁 OOMCPU 使用率、内存占用、GC 频率、系统负载jstack、jmap、vmstat、dmesg
网络域连接超时、丢包、重传率异常、DNS 解析失败TCP 重传率、连接数、RTT、丢包率tcpdump、ping、ss、nslookup
优先判断业务域异常,因为其对用户体验的影响最直接;但是系统域和网络域往往是业务域异常的根本原因。

1.2 监控指标优先级:红绿灯判断规则

面对大量监控数据,可按“红绿灯”规则快速筛选出高关注指标:

  • 红灯(P0级):直接导致用户无法使用或数据丢失的指标。例如:业务错误率突破阈值、数据库不可写、所有 Pod 健康检查失败。
  • 黄灯(P1级):服务质量显著下降但尚可使用的指标。例如:p99 响应时间超过基线 3 倍、部分节点 CPU 使用率持续 80% 以上。
  • 绿灯(P2/P3级):次要指标或预警指标。例如:磁盘使用率超过 70%、GC 频率轻微上升。
红灯指标一旦触发,应无条件中断当前任务,立即进入数据采集流程。黄灯指标应列入快速排查队列,不做深度发版修复,优先查明影响范围。

1.3 紧急度判断矩阵

结合“影响用户数”与“影响功能完整性”两个维度,将问题划分为四个紧急度等级,指导故障处置顺序。

影响用户数功能完全不可用功能部分可用功能正常但体验下降
大量用户 (≥10%)P0 紧急P1 高P2 中
部分用户 (1%~9%)P1 高P2 中P3 低
少量用户 (≤1%)P2 中P3 低P3 低(可延迟处理)

判断紧急度时,应参考以下信息源:

# 业务监控平台示例查询语句(用于获取当前错误率与用户影响范围)
# 假设使用 Prometheus PromQL
rate(error_count_total[5m]) / rate(request_count_total[5m]) > 0.05
--> 触发 P1 以上级别判断
紧急度判断必须实时获取,不能依赖历史静态数据。对于 P0 级问题,必须有跨团队快速进入“现场快照”采集的通道。

1.4 故障树:异常现象 → 紧急度 → 采集动作

下面以故障树的形式,将三类异常域与紧急度判断、采集动作的关系可视化,方便一线运维与开发人员快速对照。

异常现象 → 紧急度 → 采集动作 故障树 线上问题现象 业务域异常 系统域异常 网络域异常 P0/P1 紧急 P1 高 P2 中 P3 低 观察/延迟 立即采集现场快照 采集 trace + 日志 采样监控指标 记录症状后恢复 使用说明 1. 从顶部“线上问题现象”开始,根据异常所属域向下分支。 2. 根据影响用户数&功能完整性判断紧急度等级(P0~P3)。 3. 紧急度决定采集动作的具体策略:P0须立即采集完整现场快照,P3可标记后延迟处理。 4. 后续章节会详细分解“现场快照”与“trace分析”的具体采集与定位技术。
实际排查时,可将该故障树打印为 A4 速查表或挂在云文档中,团队在接到报警后按树状结构逐级判断,避免因人员经验差异导致紧急度误判。

1.5 关键判断规则速查(排查表)

以下规则用于快速判定是否需要立即启动“现场快照”采集流程:

# 规则1:凡涉及核心交易链路的异常,无论错误率高低,至少按P1处理
if 链路包含 [支付/下单/登录/数据库写入]:
    if 错误率 > 0:
        -> 紧急度 >= P1

# 规则2:系统资源耗尽类异常(如OOM、CPU 100%)自动升级为P1
if 系统指标命中 任何一项:
    [OOM, 内存使用率>=95%, CPU 使用率>=90%, 磁盘写不进去]
        -> 紧急度 >= P1

# 规则3:网络丢包率超过0.1%且影响跨机房/跨云调用
if 丢包率 > 0.1% AND 调用链路涉及跨区域:
    -> 紧急度 >= P1

以上规则可作为告警处理平台的“前置判断逻辑”,系统自动为告警打上紧急度标签,减少人工分析耗时。