Grafana 是一个强大的可观测性数据可视化平台,并且迭代迅速,截止目前已经支持了对指标、追踪、日志、性能剖析等四种观测信号的可视化。此次分享将会对 DeepFlow Grafana 插件做详细解析,介绍如何从零开始开发一个 Grafana 的 Datasource,分享如何利用 Grafana 的强大插件能力构建自己的数据查询插件。同时,我们也会介绍 DeepFlow Grafana 可视化 Panel 组件,解析内置的 DeepFlow 数据可视化系统的框架结构和具体实现,并分享绘制流量拓扑图、分布式调用火焰图的实战经验。
Q1|为什么不使用echarts的图来制作panel?
A:Echarts图可以用来制作panel。只有在Echarts目前提供的图无法满足准确体现产品意图情况下,我们才会考虑自己开发相关图表。
Q2|如果想把上面的DeepFlow的火焰图嵌入我们自己开发页面,可以嘛,怎么做?
A:可以。待DeepFlow-vis开源后,可以使用绘图组件自由搭配页面。
Q3|有计划支持其他可视化平台嘛,比如kibana或者chronograf?
A:暂时没有计划,相对来说kibana和chronograf更加针对自己的es和influxdb。
Q4|开发完页面性能上怎么保证呢?
A:数据层面通过从查询时限制查询的数据条数,优先使用对数据进行分组聚合来减少数据量。组件层面,需要从代码级别进行性能优化,避免多份数据拷贝或者视窗外的无效渲染。
Q5| 公司有在使用Grafana,是否可以直接对接DeepFlow的数据,还需要额外开发吗?或者有什么特别要求?
A:安装DeepFlow社区版时自带打包好的Grafana。独立的Grafana可以通过安装插件,导入模板直接对接DeepFlow的数据。
云杉网络
April 5, 2024
云杉动态