基于Grafana的监控数据钻取功能应用实践
互联网企业中,随着机器规模以及业务量的爆发式增长,监控数据逐渐成为一种大数据,对监控大数据的分析,包括数据采集、数据缓存、数据聚合分析、数据存储、数据展现等几个阶段。不同阶段有不同的解决方案及支撑工具,而数据展现作为最终的可视化手段,在整个监控大数据分析过程中起着举足轻重的作用,本文分享一下笔者基于Grafana的监控数据钻取功能应用实践,供感兴趣的同行做参考。
Grafana作为一个开源的数据分析展现平台,其丰富的图表、灵活的插件、多样的数据源、快速华丽的展现,总让做监控数据分析的人爱不释手,叹为观止,可以说“无Grafana,不监控展现”,关于Grafana的详细介绍不再赘述,本文重点探讨下Grafana的钻取功能。
Grafana虽然可以迅速展现各种监控时序数据,但当数据量比较大时,也会出现性能瓶颈,因此不宜用Grafana直接展现收集到的监控原始数据,而应对监控原始数据做聚合分析,将分析后的摘要数据存储到时序数据库中,将监控原始(详细)数据存储到NoSQL数据库中,Grafana只展现监控摘要数据,通过钻取功能,查看对应的监控详细数据,从而加速数据展现并对监控数据进行溯源。
在Grafana的General标签页下内置了两种钻取功能:通过链接跳转到另一个面板(Type为dashboard)或者跳转到自定义的钻取界面(Type为absolute),为了能更精确的控制钻取联查结果,我们一般采用后者。其中Url即要跳转到的页面的链接,Title是这个链接的显示名称,Url params是传递给链接的静态参数,也可以设置一些动态参数,比如时间范围(Include time range)、变量(Include variables)等,链接默认是在当前窗口打开的,也可以设置在新的窗口打开(Open in new tab)。钻取设置完毕,会在对应的Panel左上角显示一个向上的钻取箭头,鼠标移动到钻取箭头上,会显示前面定义的Title,点击该Title,就跳转到了自定义的钻取详情页面。
钻取详情页面,一般先通过列表的方式展现时序数据,推荐使用InfluxDB存储监控时序数据,查询InfluxDB中一段时间范围的时序数据时,会涉及到分页展现的问题,通过以下方式可以对InfluxDB进行数据库端分页:
1.查询总条数
SELECT COUNT(某一个Filed列) FROM measurement WHERE 时间范围
2.查询指定页指定条数
假设前台传过来的页数字段是page,每页条数字段是rows,那么查询指定页指定条数可以这样写:
SELECT time,Field列 FROM measurement WHERE 时间范围 LIMIT rows OFFSET (page - 1)*rows
通过列表展现时序数据后,可以继续钻取联查存储在HBase或ES中监控详细数据,从而实现通过Grafana快速展现摘要数据,逐步穿透钻取联查详细数据的效果。
转载于:https://www.cnblogs.com/liugh/p/10629754.html
- 点赞
- 收藏
- 分享
- 文章举报
- 基于Grafana的监控数据钻取功能应用实践
- 【jmeter】基于InfluxDB&Grafana的JMeter实时性能测试数据的监控和展示
- OneAPM大讲堂 | 监控数据的可视化分析神器 Grafana 的告警实践
- OneAPM大讲堂 | 监控数据的可视化分析神器 Grafana 的告警实践
- hadoop和hive的实践应用(二)——基于Hadoop的数据仓库工具hive搭建
- 转:基于InfluxDB&Grafana的JMeter实时性能测试数据的监控和展示
- 基于InfluxDB&Grafana的JMeter实时性能测试数据的监控和展示
- 手机应用在开发即时通讯项目功能时,不要使用基于socket.io的数据推送
- 基于InfluxDB&Grafana的JMeter实时性能测试数据的监控和展示
- 三、东软实践项目2-基于android平台的应用开发:打电话功与发短信功能
- FLEX实践—Datagrid 高级应用(模拟EBS Folder功能)
- java监控自动发邮件功能,基于126邮箱
- 基于HTML5技术的电力3D监控应用(二)
- 应用Druid监控SQL语句的执行情况(测试数据表明,Druid性能比DBCP、C3P0、Proxool、JBoss都好)
- 基于LBS功能应用的Geohash方案
- Android上基于JSON的数据交互应用
- 基于XML的Web数据挖掘在数字图书馆中的应用
- 基于Hadoop生态圈的数据仓库实践 —— 进阶技术(十三)
- 基于企业级证书的IOS应用打包升级功能介绍
- 实现计算机各个性能数据监控的功能