实时洞察应用健康:使用Spring Boot集成Prometheus和Grafana

本文主要是介绍实时洞察应用健康:使用Spring Boot集成Prometheus和Grafana,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 添加Prometheus和Actuator依赖

pom.xml中添加Spring Boot Actuator和Micrometer Prometheus依赖:

<dependencies>
<!--监控功能Actuator--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><!-- Micrometer Prometheus Registry --><dependency><groupId>io.micrometer</groupId><artifactId>micrometer-registry-prometheus</artifactId></dependency><!-- Micrometer核心库 --><dependency><groupId>io.micrometer</groupId><artifactId>micrometer-core</artifactId></dependency>
</dependencies>

2. 配置Actuator端点

application.yml文件中配置Actuator以启用Prometheus的端点:

spring:application:name: kkxx-poiprofiles:active: local
#Prometheus springboot监控配置
management:endpoints:web:exposure:include: "*"
# 指标metrics:export:prometheus:enabled: truetags:application: ${spring.application.name} # 暴露的数据中添加application label

3. 启动应用程序

启动Spring Boot应用程序。默认情况下,Prometheus指标将通过/actuator/prometheus端点暴露。
http://localhost:9091/actuator/prometheus

4. 配置Prometheus

在Prometheus的配置文件prometheus.yml中,添加Scrape配置以从Spring Boot应用程序中抓取指标:

# 监控SpringBoot应用:kkxx-poi- job_name: 'kkxx-poi'metrics_path: '/actuator/prometheus'static_configs:- targets: ['localhost:9091']# 修改为Spring Boot应用程序的实际地址

确保Prometheus已启动并正在运行。

访问:http://localhost:9090/targets?search=

在这里插入图片描述

可以看到注册进来的 Springboot项目指标

5. 启动Grafana并配置Prometheus数据源

  1. 启动Grafana,并登录到Grafana的Web界面。
  2. 添加一个新的数据源:
    • 数据源类型选择Prometheus
    • URL字段中输入Prometheus的地址,通常为http://localhost:9090
  3. 保存并测试数据源,确保连接成功。

6. 创建Grafana仪表板

  1. 在Grafana中创建一个新的仪表板。
  2. 打开模板商店:https://grafana.com/grafana/dashboards/?search=Java
    在这里插入图片描述
  3. 添加一个新面板,在查询编辑器中选择Prometheus数据源并编写PromQL查询来显示你感兴趣的指标。
  4. 下载对应json 并导入 使用方法

7. 验证和监控

访问你的Spring Boot应用程序并触发一些操作,返回到Grafana仪表板,查看实时的监控数据。
在这里插入图片描述

这篇关于实时洞察应用健康:使用Spring Boot集成Prometheus和Grafana的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1098492

相关文章

java实现延迟/超时/定时问题

《java实现延迟/超时/定时问题》:本文主要介绍java实现延迟/超时/定时问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Java实现延迟/超时/定时java 每间隔5秒执行一次,一共执行5次然后结束scheduleAtFixedRate 和 schedu

Java Optional避免空指针异常的实现

《JavaOptional避免空指针异常的实现》空指针异常一直是困扰开发者的常见问题之一,本文主要介绍了JavaOptional避免空指针异常的实现,帮助开发者编写更健壮、可读性更高的代码,减少因... 目录一、Optional 概述二、Optional 的创建三、Optional 的常用方法四、Optio

C++ Sort函数使用场景分析

《C++Sort函数使用场景分析》sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变,如果某些场景需要保持相同元素间的相对顺序,可使... 目录C++ Sort函数详解一、sort函数调用的两种方式二、sort函数使用场景三、sort函数排序

Spring Boot项目中结合MyBatis实现MySQL的自动主从切换功能

《SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能》:本文主要介绍SpringBoot项目中结合MyBatis实现MySQL的自动主从切换功能,本文分步骤给大家介绍的... 目录原理解析1. mysql主从复制(Master-Slave Replication)2. 读写分离3.

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印

idea maven编译报错Java heap space的解决方法

《ideamaven编译报错Javaheapspace的解决方法》这篇文章主要为大家详细介绍了ideamaven编译报错Javaheapspace的相关解决方法,文中的示例代码讲解详细,感兴趣的... 目录1.增加 Maven 编译的堆内存2. 增加 IntelliJ IDEA 的堆内存3. 优化 Mave

Java String字符串的常用使用方法

《JavaString字符串的常用使用方法》String是JDK提供的一个类,是引用类型,并不是基本的数据类型,String用于字符串操作,在之前学习c语言的时候,对于一些字符串,会初始化字符数组表... 目录一、什么是String二、如何定义一个String1. 用双引号定义2. 通过构造函数定义三、St

springboot filter实现请求响应全链路拦截

《springbootfilter实现请求响应全链路拦截》这篇文章主要为大家详细介绍了SpringBoot如何结合Filter同时拦截请求和响应,从而实现​​日志采集自动化,感兴趣的小伙伴可以跟随小... 目录一、为什么你需要这个过滤器?​​​二、核心实现:一个Filter搞定双向数据流​​​​三、完整代码

SpringBoot利用@Validated注解优雅实现参数校验

《SpringBoot利用@Validated注解优雅实现参数校验》在开发Web应用时,用户输入的合法性校验是保障系统稳定性的基础,​SpringBoot的@Validated注解提供了一种更优雅的解... 目录​一、为什么需要参数校验二、Validated 的核心用法​1. 基础校验2. php分组校验3

Pydantic中Optional 和Union类型的使用

《Pydantic中Optional和Union类型的使用》本文主要介绍了Pydantic中Optional和Union类型的使用,这两者在处理可选字段和多类型字段时尤为重要,文中通过示例代码介绍的... 目录简介Optional 类型Union 类型Optional 和 Union 的组合总结简介Pyd