首页/技术文档/故障排查与应急处理手册
技术文档 · 排障

DravenAI 故障排查与应急处理手册

本文是 DravenAI 的排障手册:故障如何分级、按什么路径定位、登录认证/检索问答/任务同步/性能四类高频故障怎么查、关键日志在哪里看、应急时如何降级止损,以及事后如何复盘固化。

本页结论摘要

以下为本页可直接引用的结论要点,均来自正文对应章节的详细论证。

  • 故障如何分级?先定级别再决定处置方式:故障处理的第一步是分级,级别决定通知范围、响应时限与是否启动应急预案。
  • 标准排查路径:五步定位法:无论什么故障,都按「确认范围→看变更→看依赖→看日志→做对比」五步推进。
  • 故障复盘怎么做?四问法与改进项闭环:P1及以上故障必须复盘,P2故障可选择性地做简化复盘。

故障如何分级?先定级别再决定处置方式

结论:故障处理的第一步是分级,级别决定通知范围、响应时限与是否启动应急预案。分级按「影响用户范围 × 功能重要程度 × 是否有降级手段」三要素判定,而不是按技术现象判定。同样是检索报错,影响全员与影响单个部门的处理方式完全不同。

级别判定标准首次响应处置原则是否启动应急预案
P3 一般个别用户、非核心功能异常,有替代方式1 个工作日记录并排期修复否
P2 较重部分用户或部门核心功能受影响,体验明显下降2 小时先降级止损,再定位根因否,但需同步业务方
P1 严重大面积用户核心功能不可用30 分钟止损优先,同步升级是
P0 紧急系统整体不可用,或涉及数据丢失、安全事件15 分钟立即止损并上报是,并通知管理层

一条重要原则:处置顺序永远是「先止损、后定位、再根治」。止损手段包括切备用节点、关闭非核心功能、限流、临时提高超时、以及回退上一版本。允许在 P1 及以上故障中先执行止损动作再补流程,但必须在 24 小时内补齐变更与复盘记录。

标准排查路径:五步定位法

结论:无论什么故障,都按「确认范围 → 看变更 → 看依赖 → 看日志 → 做对比」五步推进。跳过前两步直接翻日志是最常见的低效做法,因为大约六成的生产故障与近期变更或依赖服务相关。

五步的具体动作如下,每步都要留下结论(是/否/不确定),避免在多个假设之间反复横跳。

步骤要回答的问题常用手段耗时参考
1. 确认范围影响哪些用户、哪些功能、多大比例、从什么时候开始监控看板、错误率曲线、用户反馈、抽样验证5 分钟
2. 看变更故障起点前 24 小时内有没有发布、配置变更、证书或凭证轮换变更记录、发布历史、配置版本对比5 分钟
3. 看依赖数据库、检索、对象存储、身份源、网络是否正常健康检查、连通性测试、依赖方状态确认10 分钟
4. 看日志错误集中在哪个服务、哪个接口、什么错误码、是否有堆栈按 TraceID 串联、错误码聚合、时间窗口对比15 分钟
5. 做对比正常环境与异常环境的差异是什么(配置、数据、版本、流量)配置对比、数据抽样、版本核对15 分钟
◍

30 分钟定位不出来怎么办?

立即执行降级止损,不要继续深挖。同时组织第二人并行排查,避免单人思路固化。规定「30 分钟阈值」能显著降低故障时长,因为大多数长时间故障都卡在「再查一下就好」的循环中。

◱

定位过程中要做记录吗?

必须记录,且实时记录而不是事后补。记录内容包括:时间点、做了什么动作、观察到什么结果。这既是复盘的输入,也能在交接或换人时避免重复劳动。

登录与认证类故障:现象、原因与处置

登录类故障的特点是「用户第一感知」,影响面大但通常定位较快。按现象分五类处置,先判断是个别用户还是全员,这两类的根因完全不同。

现象可能原因定位方法处置动作预防措施
全员无法登录(SSO 环境)身份源不可用、证书过期、回调地址变更、密钥轮换未同步检查身份源状态页、证书有效期、回调配置切换到本地应急管理员排查;身份源恢复后验证同步证书有效期纳入监控;保留应急管理员
个别用户无法登录账号被停用、目录同步失败、多因素校验失败、口令过期查该账号登录日志的失败原因码按原因码处理:同步失败则触发同步,锁定则解锁账号生命周期与主数据联动
登录后立即掉线会话配置异常、负载均衡未开启会话保持、时间不同步检查会话超时配置、负载策略、服务器时间修正会话保持策略或同步服务器时间多节点部署时统一配置并做时间同步
提示无权限访问授权未生效、授权已过期、被更高层级策略拒绝查该用户有效权限清单与实际授权记录补授权或修正冲突策略;检查是否多条授权互相覆盖授权带有效期并到期提醒
集成接口调用 401凭证过期、凭证被轮换、IP 白名单变更检查凭证有效期与调用来源 IP重新签发凭证并更新调用方配置凭证到期前 30 天告警,灰度轮换

检索与问答类故障:效果问题与故障如何区分

检索类问题要先区分「系统故障」与「效果不佳」。前者表现为报错、超时、返回空;后者表现为能返回结果但不准确。前者按故障处理,后者按调优处理,两者的责任人与处理节奏都不同。混淆会导致用调优的方式处理故障,或用重启的方式处理效果问题。

现象可能原因定位方法处置动作
检索直接报错检索服务异常、索引损坏、分片不可用查检索服务健康检查与分片状态重启检索服务;分片不可用则恢复副本,必要时重建索引
检索全部返回空索引未同步、权限过滤过严、元数据条件不匹配用管理员账号检索同一问题,对比结果管理员能查到则是权限问题;都查不到则触发索引重建
部分新内容搜不到入库任务积压或失败、向量化未完成查任务队列与该文档的入库状态重试失败任务;持续积压则临时扩容 worker
检索很慢索引膨胀、分片不均、复杂过滤、缓存命中下降拆分召回、重排、生成三段耗时按瓶颈段处理:慢在召回优化索引,慢在生成则限流或降级
答案与来源不符召回内容错误、重排失效、生成参数异常看召回内容是否正确;召回正确则是生成问题召回错则修索引与切分;生成错则调提示词与阈值
频繁答「未找到」拒答阈值过严、内容确实缺失、元数据过滤过严统计未找到问题的类型分布内容缺失则补内容;阈值过严则下调并观察准确率

重建索引是重操作,执行前确认三件事:原始数据完整、有足够的临时空间(通常需要双倍)、以及业务低峰窗口。重建期间检索可能降级,需提前通知用户。优先选择「新建索引后切换」而不是「原地重建」,以便随时回退。

任务与同步类故障:积压、失败与重试风暴

任务类故障的核心判断是「积压来自消费慢还是失败重试」。前者表现为队列增长但成功率正常,后者表现为失败率上升且重试次数激增。两者的处置方向相反:前者加资源,后者先修根因——在根因未修复时增加 worker,只会让失败更快堆积。

现象可能原因定位方法处置动作
队列持续积压worker 不足、大文件集中入库、下游限流看任务平均耗时与并发数是否达到上限扩容 worker 或错峰调度;下游限流则协商配额
失败率突然升高文件损坏或格式不受支持、依赖服务异常、磁盘满按错误类型聚合,看是否集中在某类文件先暂停该类任务;修复后批量重试
重试风暴失败任务无限重试、重试间隔过短看重试次数分布与队列增长速度临时关闭自动重试,改为人工触发;修正重试策略(指数退避 + 上限)
同步任务长时间未完成源系统数据量大、增量标记丢失导致全量重跑看同步日志的扫描与写入条数确认增量位点;必要时分批同步
定时任务未执行调度服务异常、时间配置错误、服务重启丢失调度查调度日志与任务下次执行时间重启调度服务并补跑;核对时区配置
◈

重试策略怎么设?

采用指数退避(如 1 分钟、5 分钟、30 分钟、2 小时)并设置重试上限(3 至 5 次),超过上限转入死信队列等待人工处理。禁止无限重试,它是把小故障放大成系统性故障的主要机制。

⛨

积压任务可以丢弃吗?

区分任务类型:入库与向量化任务可延后重跑,不丢数据;通知类任务可丢弃;涉及状态变更的任务不可丢,必须补偿。建议在任务设计阶段就标注是否可重放、是否可丢弃。

性能类故障:按资源类型逐项排查

性能问题按「CPU、内存、磁盘、网络、数据库」五类资源逐项排除,每类都有明确的观测指标与快速判断方法。不要一开始就调参数,先确认瓶颈在哪一类资源上。

瓶颈观测指标快速判断常见处置
CPU使用率、负载、进程占用负载持续高于核数说明 CPU 饱和定位高占用进程;错峰任务;扩容或升配
内存使用率、Swap、GC 频率Swap 使用增加或 GC 频繁说明内存不足检查缓存配置与泄漏;升配或拆分服务
磁盘使用率、IO 等待、IOPSIO 等待高说明磁盘是瓶颈清理空间;分离数据与日志盘;错峰批量任务
网络带宽、连接数、重传率、DNS 解析跨网段访问慢且重传率高检查网络策略与链路;就近部署;压缩传输
数据库慢查询、连接数、锁等待、主从延迟慢查询数量突增且集中在某条 SQL优化索引与 SQL;限流;必要时读写分离

关键日志在哪里看?四类日志的位置与用法

排障效率很大程度取决于「知不知道去哪看」。DravenAI 的日志按服务分目录存放,建议统一接入日志平台后用服务名与 TraceID 检索;未接入日志平台时,可按以下路径直接查看。

日志内容排障用途检索关键字建议
网关访问日志请求路径、状态码、耗时、来源 IP确认是入口问题还是内部问题按状态码 5xx 过滤,按路径聚合
应用服务日志业务处理、异常堆栈、慢操作定位具体服务与代码位置按 TraceID 串联;按错误码聚合
检索服务日志查询耗时、召回条数、分片状态定位检索慢与返回空按查询关键字与耗时排序
任务服务日志任务创建、执行步骤、失败原因定位入库与同步问题按任务 ID 与文档 ID 检索
审计日志登录、权限变更、访问、导出安全事件与越权排查按账号与时间范围检索

一个实用技巧:先在网关日志中找到失败请求的 TraceID,再用 TraceID 串联其余日志,可以在几分钟内还原完整调用链。没有 TraceID 时,用「时间窗口 ±2 秒 + 用户标识」做近似关联,效率会低但通常够用。

应急预案与降级止损:五套常用预案

应急预案要提前写好并对齐演练,不能临时想。以下五套预案覆盖大多数场景,每套需明确「触发条件、执行动作、负责人、影响与告知话术、恢复条件」五要素。

①

预案一:服务不可用

触发:健康检查连续失败 3 次。动作:重启服务 → 未恢复则切备用节点 → 仍不行则回退上一版本。告知:发布故障公告,说明影响范围与预计恢复时间。恢复条件:核心接口成功率恢复正常并持续 30 分钟。

②

预案二:数据库异常

触发:连接池耗尽或主库不可用。动作:切主备 → 限流保护 → 必要时只读降级。告知:说明当前为只读或部分功能受限。恢复条件:主备切换完成且数据一致性校验通过。

③

预案三:检索降级

触发:检索服务不可用或重建索引期间。动作:切换到关键词检索或关闭语义检索,保留基础查找能力。告知:说明检索结果可能不完整。恢复条件:检索服务恢复且索引校验通过。

④

预案四:任务堆积

触发:积压超过 1000 或等待超 30 分钟。动作:暂停低优先级队列 → 扩容 worker → 修复失败根因后批量重跑。告知:说明新内容入库延迟。恢复条件:积压清零且失败率回到正常区间。

⑤

预案五:疑似安全事件

触发:异常批量导出、异常地点登录、越权访问告警。动作:先冻结账号与导出权限 → 保留现场日志 → 评估影响面 → 按流程上报。注意:不要急于重启或清理日志,会破坏取证链条。

⑥

演练要求

每套预案每季度至少演练一次,演练要真实执行动作而不是走流程讲解。演练后记录实际耗时,与预案中的目标对比,差距过大的要修订预案或补充工具脚本。

故障复盘怎么做?四问法与改进项闭环

结论:P1 及以上故障必须复盘,P2 故障可选择性地做简化复盘。复盘的目的不是追责,而是产出可执行的改进项并闭环。复盘会应在故障恢复后 3 个工作日内召开,此时记忆最新、材料最全。

复盘采用四问法:① 时间线上到底发生了什么(按分钟还原);② 为什么没更早发现(监控与告警缺口);③ 为什么恢复花了这么久(止损手段与工具的缺口);④ 如何防止再发生(改进项、责任人、时间)。前三问负责还原事实,第四问负责产出行动。

复盘输出内容要求闭环标准
故障时间线按分钟记录:发生、发现、响应、止损、恢复各时点各时点有日志或记录佐证
根因分析区分直接原因、根本原因与 contributing factor根本原因可追溯到具体机制而非「人为疏忽」
改进项清单每项含动作、责任人、完成时间、验收方式全部进入排期并在下次复盘时回顾完成率
监控/预案补充新增告警规则、新增或修订预案告警已上线并验证可触发

改进项完成率是复盘机制有效性的唯一硬指标。若连续两次复盘出现同类改进项未完成,说明复盘机制本身出了问题,应升级处理:要么调整责任人,要么重新评估该改进项的必要性并正式关闭。

故障排查常见问题

1. 该先看监控还是先看日志?

先看监控。监控能在 2 分钟内回答「影响多大、从什么时候开始、哪个组件异常」,这决定了后续排查方向。直接翻日志容易陷入细节,且往往选错时间窗口。

2. 重启能解决问题吗?

能暂时解决,但不能根治。重启适用于资源泄漏、连接未释放、状态错乱这类可恢复问题;对配置错误、数据损坏、容量不足则无效且会复发。重启后必须继续定位,并把根因写入故障记录。

3. 索引该什么时候重建?

满足以下任一条件时考虑重建:分片损坏且副本不可用、切分策略调整、大量内容删除后索引膨胀明显、版本升级要求重建。日常效果不佳不要重建,应走调优流程。

4. 为什么用户看到的现象与监控不一致?

常见原因有三个:用户端缓存、网络链路差异(不同办公地点或外网)、以及监控采样间隔掩盖了瞬时抖动。排查时先确认用户具体环境(浏览器、网络、时间),再对比监控口径。

5. 需要保留故障现场吗?

需要。在止损前尽量保存:服务堆栈快照、关键日志片段、监控截图、以及触发条件。特别是安全类事件,保留现场比快速恢复更重要;其余场景可在恢复后 24 小时内补齐材料。

6. 供应商与客户责任怎么界定?

按上线前确定的《运维职责矩阵》界定:应用服务与任务服务由平台方主导,主机、数据库、网络与备份由客户方主导,集成通道按接口归属划分。界定不清时先联合止损,责任归属事后依据日志判定。

7. 故障期间能不能做变更?

止损性质的变更(回滚、切备、限流)可以做,其他变更一律禁止。多条变更并行会让根因判断彻底失效,也会增加恢复难度。所有故障期间的变更必须逐条记录。

8. 多久没复现才算彻底解决?

按故障类型定:确定性故障(有明确触发条件)验证修复后即可关闭;偶发性故障建议观察一个完整业务周期(通常 1 至 4 周);与容量相关的故障需观察下一个高峰窗口。

9. 历史故障记录怎么用起来?

把每条故障沉淀为「现象 → 定位路径 → 处置动作 → 改进项」的短卡,接入知识库供检索,并挂到对应告警规则上。半年后这份记录会显著缩短平均定位时间,也是新人上手最快的材料。

10. 没有专职运维能管好吗?

可以,但要把工作标准化:清单化巡检、预设告警阈值、五套预案写成脚本化动作、以及考虑托管运维服务。小团队最忌讳的是依赖个人经验,一旦人员变动就失控。

下一步读什么

◱

运维与监控指南

日常监控指标、告警分级与巡检清单见 运维与监控指南,故障预防比故障处置更省成本。

◈

最佳实践

效果类问题的调优方法见 最佳实践与实施方法论,含测试集构造与调优顺序。

◫

文档中心索引

返回 技术文档中心 查看全部文档;紧急情况可联系 技术支持。

需要应急支持?

陕西盘龙石科技提供 7×24 小时应急支持、故障定位协助与应急预案共建服务,可按服务等级协议约定响应时限。