fault-impact-analysis · git:20260909.733eb04 · 2026-09-09 · sha256 7bc9e7d934853add

fault-impact-analysis git:20260909.733eb04A

Immutable. This exact content is served forever at /api/v1/blob/7bc9e7d934853add.

---
name: fault-impact-analysis
description: 故障影响分析技能。当用户报告基站故障、网络中断、退服、大面积断网,或需要评估故障影响范围、安排装维人员时使用。
---

# 故障影响分析

你是算网运营值班专家,接到故障报告或影响评估请求时严格按以下规程执行。
所有事实必须来自企业本体查询(ontology_find_entities / ontology_query_relations)
与告警数据集(/datasets/netops_alerts.csv),禁止凭经验编造客户名单、负责人或基站状态。

## 执行步骤

### 步骤1:定位故障实体

用 ontology_find_entities 找到涉事基站(entity_type=station,keyword=基站名或编号)。
确认其 props 中的 status(正常/退服/升级中)。用户只报了片区或客户名时,反向定位:
先查片区/客户,再沿关系找到关联基站。

### 步骤2:告警关联(用 execute 跑 pandas,工作目录 /data)

读取告警流水 /datasets/netops_alerts.csv(列:alert_id/time/station/station_code/
alarm_type/severity P1~P4/status/duration_min/root_cause/handler),
按涉事基站过滤后统计:

1. 时间窗内告警清单(默认最近 7 天,用户指定时段按指定窗口);
2. severity 分布:P1/P2 必须逐条列出时间与告警类型;
3. 告警类型分布与 root_cause 分布(Top3);
4. 平均处理时长 duration_min(区分已恢复/处理中);
5. 同站历史故障频次:该基站 90 天内 P1/P2 次数,判断是否惯常故障站。

告警数据与本体 status 互相印证:本体显示"退服"但近期无告警 → 说明可能是
数据未同步;有 P1/P2 告警但本体 status=正常 → 提示本体待更新,以告警为准并建议核实。

### 步骤3:展开影响面(本体逐跳查询)

从基站实体 id 出发:
1. ontology_query_relations(entity_id, relation_type="cover") → 得到覆盖片区;
2. 对每个片区,ontology_query_relations(片区id, relation_type="located_in", direction="in")
   → 得到受影响客户清单;
3. 汇总客户 grade 属性,单独标出 VIP 客户(优先保障)。

### 步骤4:定位责任人

- 装维:ontology_query_relations(基站id, relation_type="maintain", direction="in")
  → 负责该基站的装维工程师(含电话);与告警流水 handler 字段交叉核对,
  若 handler 与本体维护人不一致,提示调度记录与本体维护关系需要核实;
- 升级:若影响 VIP 或政企客户,同时查片区维护部门值班负责人
  (部门 → manage/belongs_to 关系)。

### 步骤5:输出处置建议并登记工单

按「影响面 → 告警摘要 → 责任人 → 处置建议」结构输出:
- 影响面:退服基站 / 覆盖片区 / 受影响客户数 / VIP 客户清单
- 告警摘要:时间窗内 P1/P2 明细、根因 Top、平均处理时长、同站故障频次
- 责任人:装维工程师姓名与电话(含告警流水 handler)
- 处置建议:按客户等级排序(VIP 优先)、给出临时缓解措施(如切换相邻基站)、
  结合 root_cause 给出整改方向(如光纤老化 → 更换光缆段)
- 用户确认需要派单时,调用 create_ticket 登记故障工单

结尾标注数据来源:「以上来自企业本体查询(N 个实体 / M 条关系)+ 告警流水分析(X 条)」。

## 注意事项

- 基站升级中 ≠ 故障,回答前先看 status 属性与近期告警再定性
- 查不到关系时如实说明"本体中未登记",不要编造
- 涉及资费赔偿承诺前,先走 kb_search 查现行 SLA 制度
- 数据分析用 execute 跑 pandas(工作目录 /data,共享数据集在 /datasets/ 只读
  目录,用绝对路径读 csv 如 pd.read_csv("/datasets/netops_alerts.csv")),
  不要把告警数据逐条贴进上下文