1 简介

Grafana是一款用Go语言开发的开源数据可视化工具,可以做数据监控和数据统计,带有告警功能。

1.1 七大特点

①可视化:快速和灵活的客户端图形具有多种选项。面板插件为许多不同的方式可视化指标和日志。
②报警:可视化地为最重要的指标定义警报规则。Grafana将持续评估它们,并发送通知。
③通知:警报更改状态时,它会发出通知。接收电子邮件通知。
④动态仪表盘:使用模板变量创建动态和可重用的仪表板,这些模板变量作为下拉菜单出现在仪表板顶部。
⑤混合数据源:在同一个图中混合不同的数据源!可以根据每个查询指定数据源。这甚至适用于自定义数据源。
⑥注释:注释来自不同数据源图表。将鼠标悬停在事件上可以显示完整的事件元数据和标记。
⑦过滤器:过滤器允许您动态创建新的键/值过滤器,这些过滤器将自动应用于使用该数据源的所有查询。

2 安装

docker一键安装,有docker 真方便

$ docker run -d \-p 3000:3000 \--name=grafana \-e "GF_SERVER_ROOT_URL=http://grafana.server.name" \-e "GF_SECURITY_ADMIN_PASSWORD=secret" \grafana/grafana
默认用户密码:admin/admin, 访问地址:  服务地址 : [http://grafana服务地址:3000](http://localhost:3000/)
如果出现登录界面,代表安装启动成功

3 创建Dashboard

3.1 数据源配置

Dashboard的建立都是基于某一个数据源的,所以要先加一个数据源。

增加MySQL数据源

3.2 可视化方式

可视化方式有很多种,不过Graph、Table、Pie chart 这三种基本就已经满足数据展现要求了。

可视化方式

3.2.1 Graph

注意:只有Graph才能配置告警

新建时间间隔变量

新建时间间隔变量

Graph折线图

Graph折线图

SELECT $__timeGroupAlias(create_time,$__interval), country_name as metric, COUNT(user_id) as '用户数量' FROM `user`
WHERE $__timeFilter(create_time) GROUP BY 1,2 ORDER BY $__timeGroup(create_time,$__interval);

展现方式默认是lines

Graph柱状图

把这个Graph折线图Copy一份,改一下展现方式即可。

改Lines为Bars

3.2.2 Table

创建筛选查询变量

新建一个下拉列表做筛选

用户列表

用户列表

select user_id,user_name,mobile,id_number,country_name,money,create_time from user WHERE $__timeFilter(create_time) and country_name in ($countryName)

注意:默认添加完table后,如果有数字,会以K为单位,比如将300000展示位30k。
数字展示方式修改,Add column style:

修改数字样式

3.2.3 Pie

饼图

select country_name, create_time as time, count(*) as c from user where $__timeFilter(create_time) group by country_name order by c asc;

3.3 权限管理

3.3.1 用户管理

用户管理

3.3.2 团队管理

新建团队

团队加成员

3.3.3 文件夹权限设置

3.3.4 dashboarad权限设置

如果user在该org下role=admin,就拥有了对该dashboard的admin权利,爱干啥干啥,比如配置这个dashboard,看dashboard,配置dashboard的权限。
如果user在该org下role=editor,就拥有了对该dashbaord的edit操作权限,可以编辑dashboard,当然也可以看。
如果user在该org下role=viewer,就拥有对该dashbaord的view操作权限,就是可以看这个dashboard,但不能编辑。
就如上图设置,如果登录用户是admin,就可以进行编辑;如果登录用户是wade,仅有查看权限。

3.4 模板变量

当表格中出现数据后,需要通过筛选条件进行筛选,grafana提供了模板变量用于自定义筛选字段。
Type:定义变量类型
Query:这个变量类型允许您编写一个数据源查询,该查询通常返回一个 metric names, tag values or keys。例如,返回erver names, sensor ids or data centers列表的查询。
interval:interval值。这个变量可以代表时间跨度。不要按时间或日期直方图间隔硬编码一个组,使用这种类型的变量。

遗留问题:当选择1d(单位是d)时,会报解析错误:error parsing interval 1d,暂未解决;

Datasource:此类型允许您快速更改整个仪表板的数据源。如果在不同环境中有多个数据源实例,则非常有用。
Custom:使用逗号分隔列表手动定义变量选项。
Constant:定义一个隐藏常数。有用的metric路径前缀的dashboards,你想分享。在dashboard export,期间,常量变量将作为一个重要的选项。
Ad hoc filters:非常特殊类型的变量,只对某些数据源,InfluxDB及Elasticsearch目前。它允许您添加将自动添加到使用指定数据源的所有metric查询的key/value 过滤器。

上面的Table和Graph分别使用了interval和query来定义变量进行筛选,不再重复。

Text box

新建输入框

Custom

新建Custom变量

下拉选择

3.5 版本控制

4 告警通知

4.1 开启告警

grafana只有graph支持告警通知。
grafana的告警通知渠道有很多种,像Email、Teams、钉钉等都有支持。
在grafana.ini中开启告警:

#################################### Alerting ############################
[alerting]
# Disable alerting engine & UI features
enabled = true   #开启
# Makes it possible to turn off alert rule execution but alerting UI is visible
execute_alerts = true  #开启
# Default setting for new alert rules. Defaults to categorize error and timeouts as alerting. (alerting, keep_state)
;error_or_timeout = alerting
# Default setting for how Grafana handles nodata or null values in alerting. (alerting, no_data, keep_state, ok)
;nodata_or_nullvalues = no_data
# Alert notifications can include images, but rendering many images at the same time can overload the server
# This limit will protect the server from render overloading and make sure notifications are sent out quickly
;concurrent_render_limit = 5

4.2 邮件通知

4.2.1 STMP服务器配置

要能发送邮件通知,首先需要在配置文件grafana.ini中配置邮件服务器等信息:

#################################### SMTP / Emailing ##########################
[smtp]
enabled = true #是否允许开启
host =  #发送服务器地址,可以再邮箱的配置教程中找到:
user = 你的邮箱
# If the password contains # or ; you have to wrap it with trippel quotes. Ex """#password;"""
password = 这个密码是你开启smtp服务生成的密码
;cert_file =
;key_file =
skip_verify = true
from_address = 你的邮箱
from_name = Grafana
# EHLO identity in SMTP dialog (defaults to instance_name)
;ehlo_identity = dashboard.example.com
[emails]
;welcome_email_on_sign_up = false

修改完配置,记得重启Grafana服务

4.2.2 邮件发送

配置邮件通知渠道

配置邮件通知渠道

发送测试

发送测试

设置告警条件

5 小结

Grafana是个功能强大、展现层很漂亮的数据可视化监控工具,本篇主要介绍了Grafana基于MySQL数据源的安装及常用姿势,也支持其他数据源如ElasticSearch、InfluxDB等。更多内容可看 官网

跨平台的开源的可视化分析工具 Grafana的介绍与使用相关推荐

  1. 大数据开源的可视化分析工具,主要有哪些?

    目前,我们可以在市场上找到很多用于网络分析和数据可视化的开源工具,例如NetworkX,R和Gephi中的iGraph包等.在所有工具中,Gephi一直以来被认为是最值得推荐的,它可以帮助用户轻松实现 ...

  2. Top 7大开源数据可视化分析工具!

    目前,我们可以在市场上找到很多用于网络分析和数据可视化的开源工具,例如NetworkX,R和Gephi中的iGraph包等.在所有工具中,Gephi一直以来被认为是最值得推荐的,它可以帮助用户轻松实现 ...

  3. 基于 SpringBoot+Vue 的开源数据可视化分析工具

    简介 DataEase 是开源的数据可视化分析工具,帮助用户快速分析数据并洞察业务趋势,从而实现业务的改进与优化.DataEase 支持丰富的数据源连接,能够通过拖拉拽方式快速制作图表,并可以方便的与 ...

  4. 开源可视化分析工具,操作简单使用方便,快来种草

    关注TJ君,回复"武功秘籍"免费获取计算机宝典书籍 马上就要新的2022年啦,TJ君祝大家元旦快乐,2022年大家不要忘记继续关注TJ君哦,TJ君会努力给大家分享好东西让大家继续学 ...

  5. Top7大网络可视化分析工具介绍

    目前,我们可以在市场上找到很多用于网络分析和数据可视化的开源工具,例如NetworkX,R和Gephi中的iGraph包等.在所有工具中,Gephi一直以来被认为是最值得推荐的,它可以帮助用户轻松实现 ...

  6. 开源java性能分析工具_Java性能监控:您应该知道的5个开源工具

    开源java性能分析工具 鲜为人知但有用:开源应用程序性能监视的状态 对于任何应用程序来说,最重要的事情之一就是性能. 我们要确保用户获得他们能获得的最佳体验,并想知道我们的应用已启动并正在运行. 这 ...

  7. GIS大数据可视化分析工具

    俗话说的好:工欲善其事,必先利其器!一款好的工具可以让你事半功倍,尤其是在大数据时代,更需要强有力的工具通过使数据有意义的方式实现数据可视化,还有数据的可交互性:我们还需要跨学科的团队,而不是单个数据 ...

  8. GIS+=地理信息+大数据技术——GIS大数据可视化分析工具

    题记 俗话说的好:工欲善其事,必先利其器!一款好的工具可以让你事半功倍,尤其是在大数据时代,更需要强有力的工具通过使数据有意义的方式实现数据可视化,还有数据的可交互性:我们还需要跨学科的团队,而不是单 ...

  9. 巧用这些可视化分析工具,让你的工作效率提升50%!

    如果企业白领们穿越到过去,要做的大概就是码码字.打打电话.做做执行,然后葛优躺.非常"幸运"的是,现在互联网鹅们必须是全能超人:码字.做图.排版.搞活动.数据分析.做汇报总结-- ...

最新文章

  1. Go 分布式学习利器(15) -- Go 实现 深搜和广搜
  2. 1.String StringBuilder基础
  3. python核心装饰_Python核心编程 | 装饰器
  4. 【转载】尝试使用GraphicsMagick的缩略图功能
  5. 高级编程学习笔记day01(知识点篇)
  6. extmail垃圾邮件存放垃圾邮件箱
  7. Unity Contrib Project和资料
  8. linux设置最大打开文件数
  9. 终止正在运行的VBS脚本
  10. Java编程ture找不到符号,[未解决]Bugly中上传符号表dSYM文件
  11. 经纬度换算数值_经纬度换算
  12. 你在百度区块链养狗了么?
  13. 粗略读了一遍李子奈的《计量经济学》
  14. vlookup函数使用过程
  15. win10计算机网络设置在哪,Win10系统电脑中的网络状态在哪里查看
  16. configure报错
  17. 持续更新 BUUCTF——PWN(一)
  18. oracle权限培训,【必看】Oracle用户、权限、角色管理
  19. codeblock安装与使用教程
  20. 宇称(空间反演对称性)算符应用

热门文章

  1. bat文件如何获取输入内容并写入文件
  2. 【官方教程】Ubuntu 安装 mongoDB
  3. ubuntu 两行命令自动安装最合适的NVIDIA驱动
  4. 进制转换 [2008年北京大学图形实验室计算机研究生机试真题]
  5. Solr删除managedschema
  6. 东大OJ-Prim算法
  7. Windows中Git无法显示中文
  8. HDU - 6191 Query on A Tree
  9. hadoop---Java 网络IO编程总结BIO、NIO、AIO
  10. 各种系统扫描磁带驱动器的操作方法