一张图掌握在线系统健康状态
服务出现故障时,有没有一张图能够呈现出全系统各部分的健康状态,以便技术团队追查问题时快速找准范围,也方便经理、老板指挥故障处理时,心中有数,有的放矢?
这是很多在企业中负责系统服务稳定性的朋友,给我们提的一个高频需求和想法。
Flashcat 灭火图就是这样一个产品,用一张图掌握在线系统的健康状态。
灭火图是一个什么样的产品?
Flashcat 灭火图是一个面向系统稳定性问题排查和故障定位场景的平台,有以下特点:
① 一个立体的观测视图,看清系统的每个部分
灭火图有“首页”和“详情页”两个基本页面,首页可以下钻到详情页,首页和详情页内又可以进一步划分“层级”,反映IT系统的层级关系。
灭火图的透视模式,呈现形式类似大家熟悉的“服务树”。
比如可以组织出这样一个常见的系统层级:业务线->子系统->核心功能。 在这个层级中,最末端的层级可能有一张或多张卡片,每张卡片是一个“核心功能”。
透视模式效果如下:
② 从观测“数据”到观测“对象”
不同于Grafana主要平铺的展示观测数据,灭火图是一个立体的视图,类似“服务树”。只是这颗树的节点上挂载的对象不再只是“机器资源”,而是IT系统所有物理的和逻辑的IT对象或IT资产。如系统的功能接口、微服务、组件、存储、网络、DNS、系统、子系统等。
查问题时,先把问题范围收敛到IT对象,而非相互独立的指标,再从对象去看其相关的各维度指标,这样才更有利于从相关性中找出问题的原因。
灭火图提供了IT“对象”发现和创建的规则,可以从观测系统中自动发现IT对象,并自定义这些IT对象的呈现层级和视角。
③ 系统中IT对象正常/异常一目了然
每张灭火图卡片(IT对象)都会有 正常(飘绿)或 异常(飘红) 两种健康状态。
健康状态可以层层透传,只要下层对象出现飘红,上层对象就一定飘红,这样,所有底层IT对象的异常状态最终都被汇总到了首页。在首页就可以一览系统各个部分的健康状态,快速确定异常的范围。
④ 准确量化IT对象的健康状态
灭火图是如何定义一个IT对象的健康状态呢?
灭火图会为每张底层卡片(IT对象)配套用于量化其健康度的核心指标及异常条件。一旦异常条件达成,对应的卡片即飘红,这个飘红状态会透传到上层的每一个层级直到首页。
如底层的IT对象是核心功能,灭火图配套的健康度量化指标是该功能对应的三大黄金指标:流量、成功率、响应时间,异常条件则可能是成功率<99%。 如底层的IT对象是MySQL实例,灭火图配套的健康度量化指标是:实例存活状态、实例查询数量、实例慢查询数量、实例CPU使用率 …,异常条件则可能是 实例存活状态 == 0 || 实例慢查询数量 > 1 。
每类IT对象都有不同的健康状态量化指标,灭火图内积累了常见IT对象的健康量化指标模板,可快速应用。
⑤ 关联问题排查路径,联动各维度观测数据
灭火图首页上观察到IT系统的异常点后,可以层层下钻找到具体的异常对象,并查看异常对象配套的健康状态量化指标趋势和异常条件。 同时,为进一步追查问题根因,可从异常的指标趋势上下钻该IT对象相关的日志、链路、事件、仪表盘等等维度的观测数据,即时获得问题排查路径上所需的所有数据。
灭火图提供了关联IT对象和相应观测数据的映射规则,可以基于灭火图实现各维度观测数据的串联融合,共同加速问题的排查定位,避免用户在各类观测系统间来回切换,也降低了问题排查的门槛。
总结
总结来讲,在问题排查的场景中,灭火图有以下功能和效果,加速了问题排查定位的过程:
- 将IT系统及其层级、健康状态,用立体的方式呈现到用户面前
- IT系统每部分的健康状态一目了然,快速确定问题范围和层级
- 从异常点下钻,直达异常的IT对象
- 分析查看异常对象配套的健康量化指标、趋势和异常点
- 下钻异常对象相关的各维度数据,快速分析异常原因
AI 加速 有了系统对象元信息、有了对象和观测数据间的关联、有了各维度数据查询的能力,人基本就可以程式化的完成异常的识别,以及相关信息的查看和问题分析。
这些信息在建设系统灭火图的过程中,其实都同步完成了建设和描述,将这些信息提交给大模型就有了AI加速分析过程和提高分析准确性的可能。
Flashcat 已基于灭火图引入AI大模型,并完成了问题分析智能化加速的验证,欢迎交流试用。