Grafana 系列-统一展示-1-开篇
系列文章
Grafana 简介
Grafana 是 Grafana Labs 的第一款也是最重要的产品。它的定位是可视化, 用于监控展示 和 可观察性. 是当前最为完善、流行的云原生、公有云和企业监控可视化平台。
Dashboard anything. Observe everything
无论你的数据存储在哪里,都可以对其进行查询、可视化、预警和理解。有了 Grafana,你可以通过漂亮、灵活的仪表盘创建、探索和分享你的所有数据。

Grafana 的巨大优势
统一数据,而非数据库
Grafana 并不要求你将数据输入到后端存储或供应商数据库。相反,Grafana 采取了一种独特的方法,通过统一你现有的数据,不管它在哪里,来提供一个 "单一的玻璃窗"。
有了 Grafana,你可以利用你的任何现有数据--无论是来自 Kubernetes 集群、树莓派、不同的云服务,甚至是谷歌表格--并以你想要的方式将其可视化,所有这些都来自一个单一的仪表盘。
共享 协作
Grafana 建立在这样一个原则上:数据应该被你组织中的每一个人访问,而不仅仅是单一的运营人员。
通过数据的民主化,Grafana 有助于促进一种文化,在这种文化中,数据可以很容易地被需要它的人使用和访问,帮助打破数据孤岛并赋予团队权力。
Grafana 仪表盘不仅为从众多来源收集的数据赋予了深刻的意义,而且你还可以与其他团队成员分享你创建的仪表盘,让你们一起探索数据。
有了 Grafana,任何人都可以创建和分享动态仪表盘,以促进协作和透明度。
丰富的仪表板生态
通过 Grafana,既可以展示:
运维人员的仪表板, 如 Kubernetes Dashboard:

也可以展示开发团队的 Sprints:

还可以展示财务人员的 Revenue:

另外,Grafana 还提供了 Dashboards 的 registry, 提供成千上万、丰富多彩的仪表板。
数据关联
Grafana 可以了解所有相关的数据--以及它们之间的关系--对于尽快根治事件和确定意外系统行为的真正来源非常重要。Grafana 允许团队在一个地方对所有的数据进行无缝的可视化和跳转。
最典型的就是 Grafana Labs 的 LGTM 技术栈,包括:
- Loki(Logging)
- Grafana(可视化)
- Tempo(Tracing)
- Mimir(Metrics)
通过如下的技术细节,可以实现 Logging、Tracing、Metrics 的无缝可视化和跳转:
- Metrics -> Logs: 基于服务发现和统一 labels
- Logs -> Metrics: 基于 LogQL 提取 Metric 指标
- Logs -> Traces: 基于衍生字段 (fields) 或自动化的日志
- Traces -> Logs: 基于 labels
- Traces -> Metrics: 基于来自 spans 的 Metric 指标
- Metrics -> Traces: 基于 Prometheus 的 Exemplars.
具体如下图:

即使没有采用 Grafana Labs 的解决方案,也仍然能实现一定程度的无缝跳转。
如:
- Metric 使用 Prometheus
- Logging 使用 EFK
- Tracing 使用 Jaeger
如果日志中也包括 trace_id, Name 至少可以通过 trace_id, 实现 Logs -> Traces 的无缝跳转。
丰富的面板
丰富的面板、丰富的配置、多彩的配色。..
- 时序面板
- 折线图
- 面积图
- 散点图
- ...
- 表格
- 状态时间线(如下图)
- 统计数据 (stat)
- 仪表盘 (Gauge)
- 柱状图和饼状图
- 地理地图
- 热力图
- 日志图
- 甘特图
- 链路图
- ...

丰富的插件和数据源
用 Grafana 插件连接你的工具和你的团队。数据源插件通过 API 连接到现有的数据源,并实时呈现数据,而不需要你迁移或摄取你的数据。如:
- Zabbix 插件和数据源
- Cloudflare 插件
- Json 数据源
- Mysql 数据源
- ES 数据源
- Jaeger 数据源
- Github 数据源
- Zipkin 数据源
- Prometheus 数据源
- ...
告警
有了 Grafana 告警功能,你可以在一个简单的用户界面中创建、管理和屏蔽所有的警报,使你能够轻松地整合和集中所有的警报。

Transformations (转化)
Transformations 功能非常强大,是定制专业、美观的仪表板的必备功能。
转化允许你在不同的查询和数据源之间重命名、汇总、合并和执行计算。

Annotations(注释)
用来自不同数据源的丰富的事件对图表进行注释。悬停在事件上会显示完整的事件元数据和标签。

Panel 编辑器
面板编辑器使配置、定制和探索所有面板变得容易,在所有可视化中设置数据选项的用户界面是一致的。
Template Variables(模板变量)
用模板变量创建动态和可重复使用的仪表盘,模板变量以下拉方式出现在仪表盘的顶部。

混合数据源
在同一个图形中混合不同的数据源!你可以在每个查询的基础上指定一个数据源。如在一个仪表板中同时展示 Metric 和 Logs 的数据。
下一步
下一步,我们将通过一系列文章,完整地展示通过 Grafana 统一展示的全部细节,具体为:
- 数据源:
- AWS CloudWatch
- Prometheus
- Prometheus AlertManager
- Zabbix(通过插件)
- ElasticSearch
- Jaeger
- 仪表板:
- AWS EC2 (基于 CloudWatch)
- Prometheus Pod(基于 Prometheus)
- Linux Server (基于 Zabbix)
- App Log Quick Search(基于 ES)
- Explore:
- Jaeger
- Alerting
- 无缝可视化和跳转:
- 从 Logs(ES) 跳转到 Traces(Jaeger)
敬请期待~
Grafana 系列-统一展示-1-开篇的更多相关文章
- Grafana 系列文章(三):Tempo-使用 HTTP 推送 Spans
️URL: https://grafana.com/docs/tempo/latest/api_docs/pushing-spans-with-http/ Description: 有时,使用追踪系统 ...
- Grafana 系列文章(十二):如何使用Loki创建一个用于搜索日志的Grafana仪表板
概述 创建一个简单的 Grafana 仪表板, 以实现对日志的快速搜索. 有经验的直接用 Grafana 的 Explore 功能就可以了. 但是对于没有经验的人, 他们如何能有一个已经预设了简单的标 ...
- Grafana 系列文章(十四):Helm 安装Loki
前言 写或者翻译这么多篇 Loki 相关的文章了, 发现还没写怎么安装 现在开始介绍如何使用 Helm 安装 Loki. 前提 有 Helm, 并且添加 Grafana 的官方源: helm repo ...
- ShoneSharp语言(S#)的设计和使用介绍系列(1)— 开篇
ShoneSharp语言(S#)的设计和使用介绍 系列(1)- 开篇 作者:Shone 声明:原创文章欢迎转载,但请注明出处,https://www.cnblogs.com/ShoneSharp. 一 ...
- 性能测试 CentOS下结合InfluxDB及Grafana图表实时展示JMeter相关性能数据
CentOS下结合InfluxDB及Grafana图表实时展示JMeter相关性能数据 by:授客 QQ:1033553122 实现功能 1 测试环境 1 环境搭建 2 1.安装influxdb ...
- 分布式监控系统Zabbix--使用Grafana进行图形展示
今天介绍一款高颜值监控绘图工具Grafana,在使用Zabbix监控环境中,通常我们会结合Grafana进行图形展示.Grafana默认没有zabbix作为数据源,需要手动给zabbix安装一个插 ...
- 性能测试五十:Jmeter+Influxdb+Grafana实时数据展示系统搭建
如果用生成jtl文件再分析结果的方式的话,每一次请求就会往jtl里面写一条数据,在进行长时间的稳定性测试的时候,特别是当TPS很高的时候,写入的数据会非常的大,这个时候等稳定性测试完成,再对jtl进行 ...
- Grafana 系列文章(一):基于 Grafana 的全栈可观察性 Demo
️Reference: https://github.com/grafana/intro-to-mlt 这是关于 Grafana 中可观察性的三个支柱的一系列演讲的配套资源库. 它以一个自我封闭的 D ...
- Grafana 系列文章(二):使用 Grafana Agent 和 Grafana Tempo 进行 Tracing
️URL: https://grafana.com/blog/2020/11/17/tracing-with-the-grafana-cloud-agent-and-grafana-tempo/ ✍A ...
- Grafana 系列文章(四):Grafana Explore
️URL: https://grafana.com/docs/grafana/latest/explore/ Description: Explore Grafana 的仪表盘 UI 是关于构建可视化 ...
随机推荐
- 【对比】Gemini:听说GPT-4你小子挺厉害
前言 缘由 谷歌连放大招:Gemini Pro支持中文,Bard学会画画 事情起因: 一心只读圣贤书的狗哥,不经意间被新闻吸引.[谷歌最新人工智能模型Gemini Pro已在欧洲上市 将与ChatGP ...
- RocketMQ(4) 消息的消费
消费者从Broker中获取消息的方式有两种:pull拉取方式和push推动方式.消费者组对于消息消费的模 式又分为两种:集群消费Clustering和广播消费Broadcasting. 1. 获取消息 ...
- Java 重写引入
1 package com.bytezero.override; 2 /* 3 * 方法的重新(override/overwrite) 4 * 5 * 1.重写:子类继承父类以后,可以对父类中同名同参 ...
- C++ //常用查找算法 find_if
1 //常用查找算法 find_if 2 #include<iostream> 3 #include<string> 4 #include<vector> 5 #i ...
- 7、mysql的缓存优化
概述 开启Mysql的查询缓存,当执行完全相同的SQL语句的时候,服务器就会直接从缓存中读取结果,当数据被修改,之前的缓存会失效,修改比较频繁的表不适合做查询缓存. 操作流程 客户端发送一条查询给服务 ...
- python 打包 exe文件
操作步骤: 先安装pyinstaller,在终端中输入pip install pyinstaller即可. 打包程序: pyinstaller --console --onefile 7.py 在di ...
- python 生成虚拟环境requirement.txt
# 在项目根目录中,打开终端执行以下命令 # 生成 requirements.txt 文件 pip3 freeze > requirements.txt # 安装依赖文件 pip3 instal ...
- JVM(一)-内存结构
我们都知道,我们写的Java程序需要先经过编译,生成了.class文件(字节码文件).然而,计算机并不能直接解释.class文件里面的内容,这时候就需要一个能加载.解释.class文件并且能按.cla ...
- vue中setTimeout之前 一定要 clearTimeout 否则将失效
window.clearTimeout(this.singleClick) // 这句很重要,否则不起作用 this.singleClick = window.setTimeout(() => ...
- 在Linux平台使用wps卡顿现象解决方法
是因为软件占据的内存过多,需要关掉目前不使用的软件,以释放系统内存.