跨越可观测性鸿沟|高手们都在用的“火焰图”是什么

本文涉及的产品
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
可观测可视化 Grafana 版,10个用户账号 1个月
性能测试 PTS,5000VUM额度
简介: 火焰图(Flame Graph)由性能优化大师 Brendan Gregg 发明,和所有其他的 profiling 方法不同的是,火焰图以一个全局的视野来看待时间分布,列出所有可能导致性能瓶颈的调用栈。通过火焰图,可以非常方便的看到性能资源都消耗在了哪里,从而能够直观的看到程序的性能瓶颈,以进行程序的优化。

关键字解析:
火焰图(Flame Graph)由性能优化大师 Brendan Gregg 发明,和所有其他的 profiling 方法不同的是,火焰图以一个全局的视野来看待时间分布,列出所有可能导致性能瓶颈的调用栈。
通过火焰图,可以非常方便的看到性能资源都消耗在了哪里,从而能够直观的看到程序的性能瓶颈,以进行程序的优化。


为了使服务链路追踪可视化更高效,Erda 在微服务治理平台新版本中也引入了火焰图功能,下面我们一起来看看吧~

功能入口

https://www.erda.cloud/ (需要注册账号,如需演示可加入用户交流群获取免费试用资源)

登陆后点击如下模块:

微服务治理平台 - (具体项目) - 诊断分析 - 链路追踪 – 查看详情 – 火焰图

0.gif

进入功能界面:

1.gif

  • X 轴代表调用耗时时间长度
  • Y 轴是函数块叠加而成,有点像程序调试堆栈,代表调用的深度

火焰块 X 轴越长,说明 span 调用耗时越长,可联合其火焰图的纵轴判断是否存在子调用过多或者自身调用过慢的情况,更方便排查请求过程中的业务瓶颈或异常点。

鼠标悬浮

2.gif

火焰的每一层都会标注完整操作名,鼠标悬浮时会显示:

  • 完整的服务名
  • 具体的操作名
  • 调用类型及调用的对象
  • 当前调用耗时
  • 总调用耗时(当前调用耗时 + 子调用耗时)

点击放大

3.gif

在某一层点击,火焰图会水平放大,该层会占据所有宽度,显示详细信息。

火焰图整体功能演示参看视频:

火焰图整体演示

参考链接 & 延伸阅读


更多技术干货请关注【尔达 Erda】公众号,与众多开源爱好者共同成长~

目录
相关文章
|
6月前
全息近眼显示技术如何实现三维图像再现?
【6月更文挑战第26天】全息近眼显示技术如何实现三维图像再现?
57 4
|
Cloud Native Go 开发工具
如何让CSDN学习成就个人能力六边形全是100分:解析个人能力雷达图的窍门
如何让CSDN学习成就个人能力六边形全是100分:解析个人能力雷达图的窍门
322 0
|
7月前
|
监控 Java 数据库
揭秘Java性能调优的层次 | 综合多方向提升应用程序性能与系统高可用的关键(架构层次规划)
揭秘Java性能调优的层次 | 综合多方向提升应用程序性能与系统高可用的关键(架构层次规划)
106 0
|
7月前
|
数据可视化 数据建模
R语言用线性混合效应(多水平/层次/嵌套)模型分析声调高低与礼貌态度的关系
R语言用线性混合效应(多水平/层次/嵌套)模型分析声调高低与礼貌态度的关系
|
7月前
生态学模拟对广义线性混合模型GLMM进行功率(功效、效能、效力)分析power analysis环境监测数据
生态学模拟对广义线性混合模型GLMM进行功率(功效、效能、效力)分析power analysis环境监测数据
|
云计算
【技术规划】描绘未来第 4 部分:技术路线图
【技术规划】描绘未来第 4 部分:技术路线图
|
前端开发 数据可视化 关系型数据库
巧用 “ 火焰图 ” 快速分析链路性能
巧用 “ 火焰图 ” 快速分析链路性能
355 0
巧用 “ 火焰图 ” 快速分析链路性能
|
算法 搜索推荐 数据可视化
异动分析技术解决方案—异动归因之指标拆解
唯一不变的是变化, 在拥抱它前,请事先探知、归因、并充分准备。 在相对完善的指标体系建设背景下,我们需要通过指标以及指标波动的解读来描述、追踪、推动业务。当一个指标波动时,我们首先需要从业务视角判断其波动是否异常,即异动检测,其次判断异常背后的原因是什么,即异动归因。 归因的方法有多种,这篇文章的重点是指标拆解,也是我们做业务分析时最常用到的方法。 我们的目的是解放人力,将指标拆解实现自动化,一方面可以加快业务迭代速度,快速定位问题;另一方面可以对可能产生异动的维度进行全局量化,增强可比性,明确下一步的业务行动点的优先级。自动化异变归因的目的是为了尽快判断并抓住机遇,寻求以数据驱动作为灯塔
8149 2
|
JavaScript NoSQL 数据可视化
D3.js 力导向图的显示优化
我们用 D3.js 力导向图来对图数据库的数据关系进行分析,其节点和关系线直观地体现出图数据库的数据关系,并且还可以关联相对应的图数据库语句完成拓展查询。此外,本文还讲解了如何优化新增节点和多边关系的显示
1566 0
D3.js 力导向图的显示优化