考虑到大部分客户不希望在业务环境上长时间运行高频诊断程序以免干扰生产,IO 一键诊断采用了**"监控先行、按需抓取"**的架构:在用户指定的诊断时间段内,系统定期读取 IO 监控指标用于异常识别与问题圈定,一旦满足条件,再触发具体的子诊断工具进行深度分析并输出报告,构成从发现到定位的闭环。
其总体处理链路可概括为四步:
- 指标采集:定期从系统抓取关键 IO 指标,如 await、util、tps、iops、qu-size、iowait 等。
- 异常检测:当采集到的指标突破动态阈值,标记为潜在异常(动态阈值计算是核心)。
- 自动诊断触发:依据异常的指标类型与特征自动选择合适的诊断工具,并设置触发频率限制避免频繁调用。
- 结果处理与展示:对诊断输出进行归纳和可视化呈现,提供根本原因与可执行的优化建议。
由于不同业务对 IO 行为和性能阈值的容忍度不同,系统引入"动态阈值"机制进行异常识别,避免统一固定阈值导致的误报或漏报。




