如何将Grafana作为业务统计可视化工具

2021/02/07 10:15
阅读数 622

前言

需求做的越多越发现,几乎所有业务都需要统计功能,且功能相似程度极高(尤其是前端),从而导致相同功能开发N遍,这就好比一天三顿让你吃红烧肉你说腻不腻!!!

在这里插入图片描述

grafana 统计功能做的很完善,图表也是相当炫酷,接入也很简单,很多公司喜欢将它作为一个资源监控工具,今天我们就来尝试一下接入普通的业务统计数据。

在这里插入图片描述

安装grafana

sudo docker pull docker.io/grafana/grafana
sudo docker run -d --name=grafana -p 8080:3000 docker.io/grafana/grafana

访问http://xx.xx.xx.xx:8080/login,账号密码都为admin

在这里插入图片描述

准备测试业务数据

创建grafana库

一级分类表

在这里插入图片描述

业务数据表

在这里插入图片描述

创建mysql数据源

选择mysql
在这里插入图片描述
填入数据库必要信息
在这里插入图片描述
测试保存
在这里插入图片描述




创建dashboard

在这里插入图片描述

在这里插入图片描述

创建variables

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

编写Query

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

SELECT
  $__timeGroupAlias(ctime,$__interval),
  category2 AS metric,
  sum(price) as price
FROM grafana_price
WHERE
  $__timeFilter(ctime) AND (
    category2 = '$category2' 
    OR ("$category1" = category1 and "$category2" = "全部" and category2 <> "")
  )
GROUP BY 1,2
ORDER BY $__timeGroup(ctime,$__interval)

在这里插入图片描述

权限控制

可以给每个dashboard配置上跟此业务相关的权限组,做到各业务间的权限隔离

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述




结语

业务方只需要维护grafana_price表就可以了,前端的开发量瞬间消失这里指的是较普遍的统计需求,过于定制化的需求不适用

因为grafana的alert功能有一定的局限性,下一章介绍如何使用easyswoole获取grafana的统计数据,实现自定义报警

展开阅读全文
加载中

作者的其它热门文章

打赏
0
0 收藏
分享
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部