当前位置: 首页 > news >正文

【监控】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​来搜索、安装、更新和删除软件包&#xff0c;自动处理依赖关系&#xff0c;方便快捷地管理系统上的软件。 二、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)修改服务配置&#xff0c;打开端口允许所有IP地址 refs(https://github.com/ollama/ollama/blob/main/docs/faq.md#where-are-models-stored) C…...

YOLOv9详细解读,改进提升全面分析(附YOLOv9结构图)

&#x1f951; Welcome to Aedream同学 s blog! &#x1f951; 文章目录 1. 概要1.1 模型结构上的改动:1.2 训练脚本上的改动&#xff1a; 2. 介绍2.1 背景2.2 主要贡献 3. 总体框架3.1 可编程梯度信息&#xff08;PGI&#xff09;3.1.1 辅助可逆分支3.1.2 多级辅助信息 3.2 Ge…...

html基础操练和进阶修炼宝典

文章目录 1.超链接标签2.跳锚点3.图片标签4.表格5.表格的方向属性6.子窗口7.音视频标签8.表单9.文件上传10.input属性 html修炼必经之路—各种类型标签详解加展示&#xff0c;关注点赞加收藏&#xff0c;防止迷路哦 1.超链接标签 <!DOCTYPE html> <html lang"en…...

从Mysql 数据库删除重复记录只保留其中一条(删除id最小的一条)

准备工作&#xff1a;新建表tb_coupon /*Navicat Premium Data TransferSource Server : rootlocalhostSource Server Type : MySQLSource Server Version : 50527Source Host : localhost:3306Source Schema : leyouTarget Server Type : My…...

从http到websocket

阅读本文之前&#xff0c;你最好已经做过一些websocket的简单应用 从http到websocket HTTP101HTTP 轮询、长轮询和流化其他技术1. 服务器发送事件2. SPDY3. web实时通信 互联网简史web和httpWebsocket协议1. 简介2. 初始握手3. 计算响应健值4. 消息格式5. WebSocket关闭握手 实…...

UE5 C++ Widget练习 Button 和 ProgressBar创建血条

一. 1.C创建一个继承Widget类的子类&#xff0c; 命名为MyUserWidget 2.加上Button 和 UserWidget的头文件 #include "CoreMinimal.h" #include "Components/Button.h" #include "Blueprint/UserWidget.h" #include "MyUserWidget.genera…...

抖店无货源违规频发,不能入驻?这个是真的吗?

我是电商珠珠 还没有踏入抖店这个电商行业的新手&#xff0c;单从别人的口中&#xff0c;听说了抖店无货源特别容易违规&#xff0c;还会被扣除全部的保证金&#xff0c;得不偿失之类的话。有的还专门劝诫新手不要做抖店&#xff0c;做了就会亏本之类的话&#xff0c;这搞得人…...

HarmonyOS—开发云数据库

您可以在云侧工程下开发云数据库资源&#xff0c;包括创建对象类型、在对象类型中添加数据条目、部署云数据库。 创建对象类型 对象类型&#xff08;即ObjectType&#xff09;用于定义存储对象的集合&#xff0c;不同的对象类型对应的不同数据结构。每创建一个对象类型&#…...

mysql查询某个数据库的数量有多少GB

要查询MySQL数据库中某个数据库&#xff08;或称为“schema”&#xff09;所占用的磁盘空间大小&#xff08;以GB为单位&#xff09;&#xff0c;你可以使用information_schema数据库中的TABLES和DATA_LENGTH、INDEX_LENGTH字段来获取每个表的数据和索引的大小&#xff0c;然后…...

React hook之useRef

React useRef 详解 useRef 是 React 提供的一个 Hook&#xff0c;用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途&#xff0c;下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

shell脚本--常见案例

1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件&#xff1a; 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

通过Wrangler CLI在worker中创建数据库和表

官方使用文档&#xff1a;Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后&#xff0c;会在本地和远程创建数据库&#xff1a; npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库&#xff1a; 现在&#xff0c;您的Cloudfla…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

深入浅出:JavaScript 中的 `window.crypto.getRandomValues()` 方法

深入浅出&#xff1a;JavaScript 中的 window.crypto.getRandomValues() 方法 在现代 Web 开发中&#xff0c;随机数的生成看似简单&#xff0c;却隐藏着许多玄机。无论是生成密码、加密密钥&#xff0c;还是创建安全令牌&#xff0c;随机数的质量直接关系到系统的安全性。Jav…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh&#xff1f; 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是一个异步的、基于事件驱动的网络应用框架&#xff0c;用于…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)

题目 做法 启动靶机&#xff0c;点进去 点进去 查看URL&#xff0c;有 ?fileflag.php说明存在文件包含&#xff0c;原理是php://filter 协议 当它与包含函数结合时&#xff0c;php://filter流会被当作php文件执行。 用php://filter加编码&#xff0c;能让PHP把文件内容…...

Vue ③-生命周期 || 脚手架

生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09; 什么时候可以开始操作dom&#xff1f;&#xff08;至少dom得渲染出来&#xff09; Vue生命周期&#xff1a; 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...

Xela矩阵三轴触觉传感器的工作原理解析与应用场景

Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知&#xff0c;帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量&#xff0c;能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度&#xff0c;还为机器人、医疗设备和制造业的智…...