【监控】grafana图表使用快速上手
目录
1.前言
2.连接
3.图表
4.job和path
5.总结
1.前言
上一篇文章中,我们使用spring actuator+Prometheus+grafana实现了对一个spring boot应用的可视化监控。
【监控】Spring Boot+Prometheus+Grafana实现可视化监控-CSDN博客
其中对grafana只是打开了一下,都没做什么操作。本文我们来聊一下grafana。
Grafana 是一个开源的数据可视化和监控平台,它提供了丰富的图表、面板和仪表板功能,用于帮助用户轻松地理解、分析和监控其系统的各种指标和数据。聊grafana无非就是两个方面:
-
连接
-
图表
2.连接
先说连接,打开我们之前搭建好的grafana,点进新建连接的界面:

可以发现grafana的connection类型几乎涵盖了市面上所有的存储介质。也就是说grafana可以拿到几乎市面上所有存储介质中的数据。怎么做到的喃?来我们回忆一下上一篇文章中Prometheus的架构,注意右下角博主框红的一块儿:

图上已经写了grafana通过PromQL来访问Prometheus的,从而得到其中的数据。那其它数据库喃?那当然也是通过他们各自的SQL或者类SQL之类的指令去与他们进行交互的撒。所以首先grafan第一个厉害的点就在于一个“全”字,有几乎市面上所有数据存储介质(数据库)的driver,可以去操作几乎一切数据存储介质。
3.图表
grafana作为一个可视化工具,用它当然就是冲着它的图表来的。grafana的图表在一张张的面板里面,就像一幅幅画在画布上面。整个dashboard的管理界面很简介,也就是新建按钮、搜索框、dashboard列表组成:

新建的时候给了我们两种选项,要么新建一个,要么导一个模板进来:

add visualization,添加可视化组件:

添加组件之前首先需要确定数据源是什么,这里我们当然选择我们之前添加的Prometheus:

接下来就是在面板上画图了,既然要画图,进面板之后肯定是先选择要哪种图形组件,不同版本选择图形组建的地方不一样,博主当前用的版本是在右上角这个位置。这里我们先选择一个时间序列组件来用用:

选了组件就要配置好组件要怎么去显示数据了,也就是配置一个个的query,query的配置界面还是很简洁易懂的,下面我们配置了一个监控磁盘空间的query:
这里我们先选instance或者application来用,至于job和path,下一个章节我们会讲。

配置好以后,run queries,图表就会显示出来。
当然我们也可以配置一下刷新的时间间隔之类的:

然后就是保存,保存完了之后可以继续在面板上作画,添加其它组件,除了组件还可以添加标题之类的,根据自身需求来慢慢调整就是:

最后就是如何将grafana的dashboard导出来,我们做项目不可能监控界面还要登录进grafan里面来看对吧,还是希望是独立的数据大屏页面,这个时候直接导出dashboard即可,然后将链接复制出来插入你自己的项目中即可:

4.job和path
上面我们还留着一个尾巴没有聊,就是关于job和path。
job
在 Prometheus 中,"job" 是一个用于组织和标识一组相关的监控目标的概念。一个 job 可以包含多个监控目标,这些目标通常具有相似的功能或用途。
例如,对于一个微服务应用程序,你可能会为每个微服务定义一个独立的 job,以便将该微服务的所有实例的指标数据都组织在一起。这样做有助于对整个微服务架构进行统一的监控和分析。
在 Prometheus 的配置文件中,你可以为每个 job 指定一组监控目标(即 targets),这些目标可以是 HTTP 端点、服务发现或其他类型的监控目标。例如:
- job_name: 'my_service'static_configs:- targets: ['localhost:8080', 'localhost:8081']
Path
在 Prometheus 的配置中,"path" 通常用于指定监控目标的路径或端点,以便 Prometheus 可以从这些目标中获取指标数据。
例如,如果你的应用程序暴露了一个 /metrics 端点来提供指标数据,你可以在 Prometheus 的配置中指定该路径作为监控目标的路径。这样 Prometheus 就知道从哪里获取指标数据了。
在配置文件中,路径通常与监控目标的地址一起指定,并用于构造完整的 URL。例如:
- job_name: 'my_service'
static_configs:
- targets: ['localhost:8080/metrics', 'localhost:8081/metrics']
5.总结
其实到这里有没有发现,grafana和es的kibana在使用上是很像的:
【ES数据可视化】kibana实现数据大屏_怎么把kibana中的图标集成到自己的项目中-CSDN博客
所以说在面对同一个业务场景的时候,开源技术再多,其底层的实现和逻辑都会是相似的,因为打法都是一个路数,掌握这种打法路数,基本上就掌握了监控和可视化相关的所有组件,一通百通。
相关文章:
【监控】grafana图表使用快速上手
目录 1.前言 2.连接 3.图表 4.job和path 5.总结 1.前言 上一篇文章中,我们使用spring actuatorPrometheusgrafana实现了对一个spring boot应用的可视化监控。 【监控】Spring BootPrometheusGrafana实现可视化监控-CSDN博客 其中对grafana只是打开了一下&am…...
Django常用命令
一、新建一个新项目 django-admin startproject project_name二、新建一个app 在Django中的一个app代表一个功能模块。开发者可以将不同功能的模块放在不同的app中, 方便代码的复用。 python manage.py startapp appa_name三、数据迁移(更新数据库) 编写好了Model后&#x…...
【center-loss 中心损失函数】 原理及程序解释(更新中)
文章目录 前言问题引出open-set问题抛出 解决方法softmax函数、softmax-loss函数解决代码(center_loss.py)原理程序解释 如何梯度更新首先了解一下基本的梯度下降算法然后 前言 学习一下: 中心损失函数,用于用于深度人脸识别的特…...
什么是 HTTPS 证书?作用是什么?
HTTPS 证书,即超文本传输安全协议证书(Hypertext Transfer Protocol Secure),是网站安全的关键组成部分。它通过 SSL/TLS 加密协议,确保用户与网站之间的数据传输是加密和安全的。 什么是 HTTPS 证书? HT…...
为什么软考报名人数越来越多?
2020年软考报名人数404666人,广东省报考人数超过14万人。 ●2021年软考通信考试报名人数突破100万人,估计软考有90多万。 ●2022年软考通信考试共129万人,估计软考占了120多万人。 ●2023年软考具体报名人数没有公布,但工业和信…...
【投稿优惠|快速见刊】2024年图像,机器学习和人工智能国际会议(ICIMLAI 2024)
【投稿优惠|快速见刊】2024年图像,机器学习和人工智能国际会议(ICIMLAI 2024) 重要信息 会议官网:http://www.icimlai.com会议地址:深圳召开日期:2024.03.30截稿日期:2024.03.20 (先…...
html2canvas 将DOM节点转成图片
官网地址:html2canvas - Screenshots with JavaScript 将js文件保存到本地 可以新建一个txt文件,然后丢进去修改后缀名称即可。 在项目中引入js文件: import html2canvas from "../html2canvas.min.js" 这是我准备画的DOM节点。…...
【多线程】常见锁策略详解(面试常考题型)
目录 🌴 乐观锁 vs 悲观锁🎍重量级锁 vs 轻量级锁🍀自旋锁(Spin Lock)🎋公平锁 vs ⾮公平锁🌳可重⼊锁 vs 不可重⼊锁🎄读写锁⭕相关面试题 常⻅的锁策略 注意: 接下来讲解的锁策略不…...
Python列表操作函数
在Python中,列表(list)是一种可变的数据类型,它包含一系列有序的元素。Python提供了一系列内置的函数和方法来操作列表。以下是一些常用的Python列表操作函数和方法: 列表方法 append(x) 将元素x添加到列表的末尾。 …...
Qt注册类对象单例与单类型区别
1.实现类型SingletonTypeExample #ifndef SINGLETONTYPEEXAMPLE_H #define SINGLETONTYPEEXAMPLE_H#include <QObject>class SingletonTypeExample : public QObject {Q_OBJECT public://只能显示构造类对象explicit SingletonTypeExample(QObject *parent nullptr);//…...
Rocky Linux 运维工具yum
一、yum的简介 yum是用于在基于RPM包管理系统的包管理工具。用户可以通过 yum来搜索、安装、更新和删除软件包,自动处理依赖关系,方便快捷地管理系统上的软件。 二、yum的参数说明 1、install 用于在系统的上安装一个或多个软件包 2、seach 用…...
linux下的ollama
refs: https://github.com/ollama/ollama/blob/main/docs/linux.md 1)安装 curl -fsSL https://ollama.com/install.sh | sh 2)修改服务配置,打开端口允许所有IP地址 refs(https://github.com/ollama/ollama/blob/main/docs/faq.md#where-are-models-stored) C…...
YOLOv9详细解读,改进提升全面分析(附YOLOv9结构图)
🥑 Welcome to Aedream同学 s blog! 🥑 文章目录 1. 概要1.1 模型结构上的改动:1.2 训练脚本上的改动: 2. 介绍2.1 背景2.2 主要贡献 3. 总体框架3.1 可编程梯度信息(PGI)3.1.1 辅助可逆分支3.1.2 多级辅助信息 3.2 Ge…...
html基础操练和进阶修炼宝典
文章目录 1.超链接标签2.跳锚点3.图片标签4.表格5.表格的方向属性6.子窗口7.音视频标签8.表单9.文件上传10.input属性 html修炼必经之路—各种类型标签详解加展示,关注点赞加收藏,防止迷路哦 1.超链接标签 <!DOCTYPE html> <html lang"en…...
从Mysql 数据库删除重复记录只保留其中一条(删除id最小的一条)
准备工作:新建表tb_coupon /*Navicat Premium Data TransferSource Server : rootlocalhostSource Server Type : MySQLSource Server Version : 50527Source Host : localhost:3306Source Schema : leyouTarget Server Type : My…...
从http到websocket
阅读本文之前,你最好已经做过一些websocket的简单应用 从http到websocket HTTP101HTTP 轮询、长轮询和流化其他技术1. 服务器发送事件2. SPDY3. web实时通信 互联网简史web和httpWebsocket协议1. 简介2. 初始握手3. 计算响应健值4. 消息格式5. WebSocket关闭握手 实…...
UE5 C++ Widget练习 Button 和 ProgressBar创建血条
一. 1.C创建一个继承Widget类的子类, 命名为MyUserWidget 2.加上Button 和 UserWidget的头文件 #include "CoreMinimal.h" #include "Components/Button.h" #include "Blueprint/UserWidget.h" #include "MyUserWidget.genera…...
抖店无货源违规频发,不能入驻?这个是真的吗?
我是电商珠珠 还没有踏入抖店这个电商行业的新手,单从别人的口中,听说了抖店无货源特别容易违规,还会被扣除全部的保证金,得不偿失之类的话。有的还专门劝诫新手不要做抖店,做了就会亏本之类的话,这搞得人…...
HarmonyOS—开发云数据库
您可以在云侧工程下开发云数据库资源,包括创建对象类型、在对象类型中添加数据条目、部署云数据库。 创建对象类型 对象类型(即ObjectType)用于定义存储对象的集合,不同的对象类型对应的不同数据结构。每创建一个对象类型&#…...
mysql查询某个数据库的数量有多少GB
要查询MySQL数据库中某个数据库(或称为“schema”)所占用的磁盘空间大小(以GB为单位),你可以使用information_schema数据库中的TABLES和DATA_LENGTH、INDEX_LENGTH字段来获取每个表的数据和索引的大小,然后…...
React hook之useRef
React useRef 详解 useRef 是 React 提供的一个 Hook,用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途,下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...
shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...
深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法
深入浅出:JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中,随机数的生成看似简单,却隐藏着许多玄机。无论是生成密码、加密密钥,还是创建安全令牌,随机数的质量直接关系到系统的安全性。Jav…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
Netty从入门到进阶(二)
二、Netty入门 1. 概述 1.1 Netty是什么 Netty is an asynchronous event-driven network application framework for rapid development of maintainable high performance protocol servers & clients. Netty是一个异步的、基于事件驱动的网络应用框架,用于…...
[ACTF2020 新生赛]Include 1(php://filter伪协议)
题目 做法 启动靶机,点进去 点进去 查看URL,有 ?fileflag.php说明存在文件包含,原理是php://filter 协议 当它与包含函数结合时,php://filter流会被当作php文件执行。 用php://filter加编码,能让PHP把文件内容…...
Vue ③-生命周期 || 脚手架
生命周期 思考:什么时候可以发送初始化渲染请求?(越早越好) 什么时候可以开始操作dom?(至少dom得渲染出来) Vue生命周期: 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...
Xela矩阵三轴触觉传感器的工作原理解析与应用场景
Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知,帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量,能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度,还为机器人、医疗设备和制造业的智…...
