解锁Spring Boot、Prometheus与Grafana三合一:打造你的专属自定义指标炫酷大屏!

1. 集成Prometheus到Spring Boot

需要在Spring Boot应用中集成Prometheus。可以通过micrometer库来实现。micrometer是一个应用程序监控库,它支持多种监控系统,包括Prometheus。

一招制胜!Spring Boot、Prometheus和Grafana三剑合璧,称霸监控领域!

2. 编写自定义指标

需求: 统计接口访问次数

/*** 功能描述: prometheus:自定义指标* 功能需求:* 来监控接口请求次数* 实际项目项目中,使用AOP,或拦截器方式统计接口的请求信息次数更为优雅** @author Songxianyang* @date 2024-08-13 10:00*/
@Slf4j
@RestController
@RequestMapping("/custom-metrics")
@RequiredArgsConstructor
@Api(tags = "自定义指标")
public class CustomMetricsController {private final MeterRegistry meterRegistry;public static final String METRICS = "metrics.kkxx-poi.request.count";/*** 详情接口请求统计*/@ApiOperation("详情接口")@GetMapping("/get/{id}")public String get(@PathVariable("id") String id) {Counter.builder(METRICS).tags("apiCode", "get").register(meterRegistry).increment();return "详情接口请求统计id:" + id;}/*** 列表接口请求统计*/@ApiOperation("列表接口")@PostMapping("/list")public String list() {Counter.builder(METRICS).tags("apiCode", "list").register(meterRegistry).increment();return "列表接口请求统计";}
}

可以通过使用AOP来实现自定义指标,可以更优雅地为Spring Boot应用中的方法提供监控支持,并且这些指标可以在Prometheus和Grafana中进行可视化展示。

2. 在Prometheus中调试展示指标

  1. 点击 Graph
    在这里插入图片描述
  2. 输入 metrics_kkxx_poi_request_count_total 点击 Execute

在这里插入图片描述
3. 点击 Graph
在这里插入图片描述
4. 接口请求次数
在这里插入图片描述

4. 在Grafana中展示指标

  1. 创建仪表盘:
    在这里插入图片描述

    • 创建一个新的仪表盘(Dashboard)。
    • 添加一个新的面板(Panel)。
    • 在面板的查询部分输入你的自定义指标名称,例如metrics_kkxx_poi_request_count_total
    • 选择一个合适的图表类型(如Graph、Stat等)来展示数据。
      在这里插入图片描述
      切换 大屏
      在这里插入图片描述
      在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/52309.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一、react-hooks(useState、useRef、forwardRef)

一、useState 注意事项: 1.setState的方法并不像函数式组件会自动合并,所以需要我们通过展开运算符手动合并。 // 更新方式1:展开运算符// const info{...userInfo,...data}// setUserInfo(info)// 方式2:setUserInfo(Object.as…

roscpp 实现深度图像与RGB图像的对齐

目录 通用内容通用可视化函数topic订阅版可视化深度图像的callback直接读取rosbag版通用内容 放到代码最上面 #include <ros/ros.h> #include <sensor_msgs/Image.h> #include <cv_bridge/cv_bridge.h> #include <opencv2/opencv.hpp> //#include &l…

银河麒麟服务器操作系统Kylin-Server-V10-SP3-2403-Release-20240426-x86_64安装步骤

银河麒麟服务器操作系统 Kylin-Server-V10-SP3-2403-Release-20240426-x86_64安装步骤 一、准备工作1. 下载ISO镜像2. 制作安装介质3. 设置BIOS 二、安装过程1. 启动系统2. 选择安装语言3. 选择安装配置4. 配置root密码与创建用户5. 开始安装6. 重启系统7. 同意许可协议 三、系…

【sql】加密所有的存储程式

因项目管理规定&#xff0c;所有的存储程式&#xff08;SP&#xff09;都需要加密。 如何批量加密所有的SP呢&#xff1f; 在网上找到了参考的代码&#xff0c;然后发现除SP外连同View,Trigger,Function等也可以一并处理&#xff01; 参考资料&#xff1a; https://download.…

【Redis】基本全局命令

Redis的基本全局命令 keysexistsdelexpirettltype Redis 有 5 种数据结构&#xff0c;但它们都是键值对种的值&#xff0c;对于键来说有⼀些通⽤的命令。 keys 返回所有满足样式 &#xff08;pattern&#xff09;的key。支持如下统配样式。 h?llo 匹配 hello , hallo 和 hxl…

七、SPA单页面实现SEO优化之SSR服务器渲染

文章目录 一、前言&#xff1a;二、SSR基本操作步骤 一、前言&#xff1a; 关于SPA和SEO优化、SSR服务器渲染的介绍可以参考这里&#xff1a; 六、什么是SEO优化&#xff08;搜索引擎优化&#xff09;&#xff1f;SPA单页面应用如何实现SEO优化&#xff1f; 通过上一篇文章可…

2024 实训室建设:1+X 老年生活照护实训室

摘要&#xff1a;本文探讨了 2024 年 1X 老年生活照护实训室的建设意义、设计理念、功能布局以及对老年照护人才培养的积极作用&#xff0c;旨在为提升老年生活照护水平提供有力的实践教学支持。 随着我国老龄化进程的加速&#xff0c;对高质量老年生活照护的需求日益增长。202…

JAVA红黑树TreeMap/TreeSet详解

Java中的红黑树是一种自平衡的二叉查找树&#xff0c;它通过特定的旋转和重新着色操作来确保树的高度大致保持在对数级别&#xff0c;从而在平均和最坏情况下都能保证查找、插入、删除等操作的时间复杂度为O(log n)。红黑树通过遵循一系列的性质来维持其平衡&#xff1a; 红黑…

培训班和科班出生有什么区别

IT业的萌新来啦 每到毕业季 总有大量萌新走进职场 IT圈子的程序员 有的是科班出生 比如 计算机科学与技术、软件工程、大数据技术 有的是相关专业出生的 比如 信息安全、网络工程、物联网工程等等 除此之外 还有各种其他专业转行过来的 文理不限、专业不限 科班出生…

【在Linux世界中追寻伟大的One Piece】IO基础

目录 1 -> 回顾 1.1 -> 回顾C文件接口 1.2 -> 总结 2 -> 系统文件I/O 3 -> 接口介绍 3.1 -> open 3.2 -> open函数返回值 3.3 -> 文件描述符fd 4 -> 0 & 1 & 2 5 -> 文件描述符的分配规则 6 -> 重定向 7 -> 使用dup2系…

运维开发——局域网SSH访问服务器与应用

摘要 本博文主要介绍局域网SSH访问登陆虚拟机和及其应用相关配置操作。 1. 局域网SSH访问登陆虚拟机 目标&#xff1a;在局域网内A电脑使用SSH登陆B电脑上虚拟机的服务器。 前提条件:B电脑为宿主机&#xff0c;可以正常使用ssh访问虚拟机服务器&#xff0c;虚拟机网络连接方…

WPS宏实现表格合并功能

把文件夹中N个表格Sheet1页的数据合并成一个新的表格 function 合并表格() { //合并文件为C盘下面名为test的文件夹 var folderPath "C:\\test"; var fileName Dir(folderPath "\\*.*"); if(fileName ""){ ale…

不同关键字的原子性、可见性、有序性之间的比较

一、多线程中有三个非常重要的特性 1. 原子性 在一次或者多次操作时&#xff0c;要么所有操作都被执行&#xff0c;要么所有操作都不执行 2. 有序性 程序执行的顺序按照代码的先后顺序执行&#xff0c;没有进行优化和顺序调整。 为了提高程序的运行效率&#xff0c;Java可能在…

深度学习基础—超参数调试

1.超参数调试顺序 在训练深度网络最难的事情之一是超参数的选择&#xff0c;如何选择合适的超参数取值&#xff1f;下面我将谈谈&#xff0c;如下是我所理解的超参数调试顺序&#xff1a; 重要性排序 超参数 Top1梯队 学习率a Top2梯队 min-batch大小&#xff0c;隐层神经…

书籍字符串的统计字符串(5)0823

题目 给定一个字符串str&#xff0c;返回str的统计字符串&#xff0c;例如“aaabbadddffc”的统计字符串为“a_3_b_2_a_1_d_3_f_2_c_1"。 补充题目 给定一个字符串的统计字符串cstr&#xff0c;再给定一个整数index&#xff0c;返回cstr所代表的原始字符串上的第index个…

QT-五子棋游戏

QT-五子棋游戏 一、演示效果二、核心代码三、下载链接 一、演示效果 二、核心代码 #include "GameModel.h" #include <time.h> #include <stdlib.h>GameModel::GameModel(){}void GameModel::startGame(GameType type){gameType type;//初始化棋盤game…

uniapp/vue如何实现一个子表单及子表单作用

子表单是一个辅助表单或一个表&#xff0c;它允许在主表单中添加多个行式项目&#xff0c;以处理与主记录相关联的多个辅助项目或数据。子表单在多种应用场景中发挥着重要作用&#xff0c;特别是在需要处理一对多关系的数据时。 以下是对子表单的详细解析&#xff1a; 定义与特…

nvm安装node找不到版本问题(只有iojs)

&#x1f506; 背景 很久没有使用nvm新安装node版本了&#xff0c;今天在切换时执行 nvm install 要执行很久&#xff0c;然后返回暂无当前版本的错误信息&#xff0c;那就执行 nvm ls-remote 看一下远程的版本&#xff0c;发现返回的只有iojs的版本&#xff0c;没有node版本&…

90%的设计师都不知道的免抠图素材插件,水花免抠png素材轻松搞定!附保姆教程

你是否曾在设计中为绘制那些晶莹剔透的水花而苦恼&#xff1f;用PS太麻烦&#xff0c;细节根本抠不清楚&#xff1b;去素材网找&#xff0c;不是付费太高就是图案不满意&#xff01;可以试试千鹿设计助手的“AI免抠生成”插件&#xff0c;接下来我来分享一下我的一些使用过程和…

LeetCode 3133.数组最后一个元素的最小值:位运算+双指针

【LetMeFly】3133.数组最后一个元素的最小值&#xff1a;位运算双指针 力扣题目链接&#xff1a;https://leetcode.cn/problems/minimum-array-end/ 给你两个整数 n 和 x 。你需要构造一个长度为 n 的 正整数 数组 nums &#xff0c;对于所有 0 < i < n - 1 &#xff0…