Skip to main content
Version: ✍️ Draft

服务

在现代复杂的分布式系统中,系统通常由多个服务组成,每个服务承担特定的功能。通过服务的视角观测系统性能,意味着以单个服务或一组相关服务为观察对象,来评估整个系统的性能表现,可以清晰地看到各个服务对系统整体性能的贡献和影响,从而更精准地定位性能瓶颈。

一个服务的性能问题,可能会影响整个系统的用户体验。例如,在一个电商系统中,有商品展示服务、购物车服务、订单处理服务和支付服务等。如果支付服务响应缓慢,即使商品展示和购物车服务都很流畅,用户在支付环节长时间等待也会对整个电商系统的满意度产生负面影响。

服务列表

服务列表页面展示所有采集到的服务及关键性能指标,帮助用户快速了解当前所有服务的简要信息。

上方搜索框,通过输入服务名称,可以快速过滤出目标服务。

左侧快捷筛选框,可以通过多种筛选项快速过滤出目标服务。服务页面默认的筛选项有服务类型、环境、版本、服务名称。

右侧数据列表,展示所选中时间段内,服务的名称、健康评分、平均响应时间、P99 响应时间、错误率、每秒请求数。服务列表默认按照每秒请求数倒序排列,点击其他性能数据的表头,可以自由进行升序、倒序排列。

服务详情

点击服务列表中的服务名称,右侧弹出抽屉页展示该服务详情页。

上方展示所选中的服务的基本性能数据,如健康评分、错误率、平均响应时间。

下方切换不同 Tab 展示不同详细信息(左上角时间轴可以切换数据范围):

  • 性能:展示当前服务的请求数、响应时间分布、错误请求数、健康评分、数据库调用性能、下游调用性能等趋势图。
  • 上下游拓扑:展示当前服务的直接上下游调用拓扑。
  • 资源:展示当前服务的资源信息,包括资源的名称、平均响应时间、P95 响应时间、P99 响应时间、错误率、调用次数。此外,点击某条资源,会弹出按钮「查看调用拓扑」和「查看调用链」。
  • 调用链:展示当前服务所产生的调用链信息,包括调用链的开始时间、服务名称、资源、持续时间、方法、HTTP 状态码。此外,点击某条调用链,会打开新的页面定位到所选中的调用链详情页。
  • 日志:展示当前服务的日志信息,包括日志的时间、日志级别、日志信息。此外,点击某条日志,会打开新的页面定位到所选中的日志详情页。

拓扑图

拓扑图页面直观展示所有采集到的服务之间的相互调用关系,以及服务名称、服务类型。

拓扑图中服务的图标、外圈、颜色等含义:

  • 中心图标表示服务类型,目前支持区分 Web、数据库、MySQL、Redis 等。
  • 实线外圈,表示该服务是通过 light-anget 采集到的 APM 服务;虚线外圈,表示未采集到该服务详细数据,被识别为第三方调用。
  • 外圈颜色,表示服务在当前填充指标下的不同区间。
    • 数值由小到大依次分为绿色、黄色、橙色、红色四个等级,不同颜色代表的值可以在页面右下角的图例查看;其中,第三方调用固定显示为灰色。
    • 默认按照“错误率”填充,还可以自定义切换为“每秒请求数”、“平均响应时间”、“P99 响应时间”。

鼠标停留在某个服务图标上,会悬浮显示该服务的名称、错误率、平均响应时间、每秒请求数;其中,第三方调用只会显示名称。同时,该服务直接的上下游调用关系会高亮显示,其他则灰度显示。鼠标停留在两个服务之间的连接线上,会悬浮显示两者调用的性能指标,有错误率、P99 响应时间、每秒请求数。

鼠标点击某个服务图标,可自由选择查看相关详情数据,如查看上下游、查看服务详情、查看相关日志、查看相关调用链。

  • 查看上下游:只展示与该服务有前后直接调用关系的拓扑图。点击左上角「返回全局拓扑」,即可重新展示全局拓扑图。
  • 查看服务详情:会带着该服务名称、当前时间轴的过滤信息,跳转到服务详情页面。
  • 查看相关日志:会带着该服务名称、当前时间轴的过滤信息,跳转到日志模块。
  • 查看相关调用链:会带着该服务名称、当前时间轴的过滤信息,跳转到调用链模块。

资源分析

资源分析模块展示采集到的所有资源与服务的依赖关系、性能数据、调用关系。

上方搜索框,通过输入资源名称,可以快速过滤出目标资源。

左侧快捷筛选框,可以通过多种筛选项快速过滤出目标资源。资源分析页面默认的筛选项有服务名称、平均响应时间范围、P95 响应时间范围、P99 响应时间范围。

右侧数据列表,展示所选中时间段内,每个服务所有资源分别的名称、平均响应时间、P95 响应时间、P99 响应时间、调用次数、错误率。

点击列表中某个资源名称,即可跳转查看该资源的调用关系拓扑。

  • 每个卡片代表一个资源,并展示该资源所属的服务名称及类型;
  • 卡片下方的百分比代表,该资源占它直接上游调用次数的百分比;每个资源直接下游的百分比加和为 100% ;
  • 默认展示所选资源下游调用关系拓扑;点击所选资源卡片左侧的「加号按钮」,即会展开该资源直接的上游调用,但不展示具体的调用百分比。
  • 默认折叠调用百分比小于 1% 的资源,点击「查看更多」即可展开;折叠调用百分比的阈值,可以在右上角自定义编辑。
  • 点击某个资源卡片,弹出按钮「查看调用拓扑」,点击即可切换展示被选中资源视角的调用拓扑;弹出按钮「查看调用链」,点击即可进入调用链模块,查看与该资源相关的调用链。