跳到主要内容

SkyWalking UI拓扑图

介绍

SkyWalking的拓扑图(Topology Map)是其UI中最核心的可视化功能之一,它通过图形化方式展示分布式系统中各服务之间的调用关系和健康状态。对于初学者而言,拓扑图能快速帮助你理解:

  1. 系统中包含哪些服务/组件
  2. 服务之间的依赖方向
  3. 每个节点的实时健康状态(通过颜色标识)
  4. 流量在不同服务间的分布情况

拓扑图基础

访问拓扑图

在SkyWalking UI的导航栏中选择 Topology 即可进入拓扑图界面。默认展示的是全局视角的拓扑结构。

关键元素解析

拓扑图中主要包含以下元素:

  • 节点(Node):表示一个服务或组件(如数据库)
    • 绿色:健康状态(响应成功率 ≥ 95%
    • 黄色:警告状态(80% ≤ 成功率 < 95%
    • 红色:故障状态(成功率 < 80%
  • 连线(Edge):表示服务间的调用关系
    • 线条粗细反映流量大小
    • 箭头方向表示调用方向
提示

将鼠标悬停在节点上会显示该服务的关键指标:

  • 平均响应时间
  • 请求量/秒
  • 成功率
  • SLA(服务等级协议)

拓扑图实战操作

1. 基础导航

  • 缩放:使用鼠标滚轮或工具栏的 +/- 按钮
  • 平移:按住鼠标左键拖动
  • 聚焦节点:双击服务节点会自动聚焦并高亮相关连接

2. 筛选与分组

在顶部工具栏可以使用以下筛选条件:

text
Service Group: [All]
Service: [All]
Instance: [All]
实际案例

假设你的电商系统包含以下服务:

  1. 前端Web服务
  2. 商品服务
  3. 订单服务
  4. 支付服务
  5. MySQL数据库

筛选 Service Group: Business 可以只显示业务服务(排除中间件和数据库)

3. 自定义视图

通过右键菜单可以对拓扑图进行个性化设置:

  • 折叠/展开节点组
  • 隐藏/显示特定节点类型
  • 保存当前视图(需要登录)

高级功能

1. 历史拓扑对比

点击时间选择器中的 Compare 按钮,可以对比不同时间段的拓扑变化:

text
Compare Mode: [Hour/Day/Week]
Base Time: [2023-11-01 14:00]
Compare Time: [2023-11-02 14:00]

2. 异常检测

当出现以下情况时,拓扑图会显示特殊标记:

  • 新增/消失的服务节点(虚线框提示)
  • 突增的流量(闪烁动画)
  • 新出现的依赖关系(红色高亮)

实际应用场景

案例:诊断订单提交失败

  1. 在拓扑图中发现 Order-Service 显示为红色
  2. 观察其依赖关系,发现到 Payment-Service 的连线也变红
  3. 点击连线查看指标,发现错误率突然升高
  4. 进一步下钻到追踪(Trace)页面分析具体请求
常见误区

不要仅凭颜色判断问题!始终需要:

  1. 结合具体指标数据
  2. 查看关联的日志和追踪信息
  3. 考虑时间范围因素(可能是历史数据)

总结

SkyWalking的拓扑图提供了分布式系统的"鸟瞰视图",能够帮助开发者:

  • 快速定位故障传播路径
  • 理解系统架构演进
  • 发现不合理的依赖关系
  • 监控全局SLA合规性

延伸学习

建议练习:

  1. 在你的测试环境中故意停用一个服务,观察拓扑图变化
  2. 模拟高流量场景,观察连线粗细的变化规律
  3. 尝试使用对比功能分析日常和高峰期的拓扑差异

进一步阅读:

  • SkyWalking官方文档中的"Topology Analysis"章节
  • 分布式系统可视化监控的最佳实践