0

0

Spring Boot整合Prometheus实现监控的详细步骤

看不見的法師

看不見的法師

发布时间:2025-07-04 20:01:02

|

798人浏览过

|

来源于php中文网

原创

要让spring boot应用集成prometheus监控,需添加依赖、启用actuator并配置端点、配置prometheus抓取任务,还可选地自定义指标。1. 添加micrometer-registry-prometheus依赖以暴露指标;2. 在配置文件中启用actuator端点并设置application标签;3. 在prometheus.yml中新增job配置,指定metrics_path和目标地址;4. 可通过micrometer注册自定义指标如计数器、定时器等,用于业务监控。完成这些步骤后,prometheus即可拉取并展示spring boot应用的监控数据。

Spring Boot整合Prometheus实现监控的详细步骤

Prometheus 是目前最流行的监控系统之一,而 Spring Boot 作为 Java 领域主流的开发框架,天然支持与 Prometheus 的集成。只需要简单几步,就可以让 Spring Boot 应用暴露指标数据,供 Prometheus 拉取并展示。

Spring Boot整合Prometheus实现监控的详细步骤

添加依赖

要让 Spring Boot 支持 Prometheus 监控,第一步是引入相关依赖。Spring Boot 默认使用 Micrometer 作为指标度量库,它已经内置了对 Prometheus 的支持。

Spring Boot整合Prometheus实现监控的详细步骤

pom.xml 中添加以下依赖:


    io.micrometer
    micrometer-registry-prometheus

如果你用的是 Gradle,就加上:

Spring Boot整合Prometheus实现监控的详细步骤
implementation 'io.micrometer:micrometer-registry-prometheus'

这样你的应用就能自动收集 JVM、HTTP 请求、线程池等常见指标,并通过 /actuator/prometheus 接口暴露出来。

启用 Actuator 并配置端点

接下来需要启用 Spring Boot Actuator,并确保 Prometheus 端点可访问。

application.ymlapplication.properties 中添加如下配置:

management:
  endpoints:
    web:
      exposure:
        include: "*"
  metrics:
    tags:
      application: ${spring.application.name}

这段配置做了两件事:

  • 开启所有 Web 端点,包括 /actuator/prometheus
  • 给每个指标打上 application 标签,方便后续在 Prometheus/Grafana 中区分服务来源

默认情况下,Prometheus 的端点是 /actuator/prometheus,可以通过浏览器访问这个地址看看输出内容是否正常。

LongCat AI
LongCat AI

美团推出的AI对话问答工具

下载

配置 Prometheus 抓取任务

有了 Spring Boot 输出的指标后,下一步就是让 Prometheus 主动去拉取这些数据。

编辑 Prometheus 的配置文件 prometheus.yml,在 scrape_configs 下新增一个 job:

- job_name: 'spring-boot-app'
  metrics_path: '/actuator/prometheus'
  static_configs:
    - targets: ['localhost:8080']

注意替换 targets 中的地址为你实际部署 Spring Boot 应用的地址和端口。

保存配置后重启 Prometheus,然后打开 Prometheus 的 Web UI(通常是 http://localhost:9090),输入 up 查看目标是否在线。

可选:自定义指标

除了默认的系统指标外,你还可以注册自己的业务指标。Micrometer 提供了多种方式来记录指标,比如计数器、定时器、Gauge 等。

举个例子,如果你想统计某个接口被调用的次数,可以这样做:

import io.micrometer.core.instrument.Counter;
import io.micrometer.core.instrument.MeterRegistry;
import org.springframework.stereotype.Service;

@Service
public class MyService {

    private final Counter myCounter;

    public MyService(MeterRegistry registry) {
        this.myCounter = Counter.builder("my.custom.counter")
                .description("A custom counter for demo")
                .register(registry);
    }

    public void doSomething() {
        myCounter.increment();
    }
}

之后访问 /actuator/prometheus,你就能看到名为 my.custom.counter 的指标了。


基本上就这些。只要加上依赖、配置好端点和 Prometheus 抓取任务,Spring Boot 就能顺利接入 Prometheus。自定义指标虽然不是必须的,但一旦用起来,对排查问题和观察业务行为非常有帮助。

相关专题

更多
java
java

Java是一个通用术语,用于表示Java软件及其组件,包括“Java运行时环境 (JRE)”、“Java虚拟机 (JVM)”以及“插件”。php中文网还为大家带了Java相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

841

2023.06.15

java正则表达式语法
java正则表达式语法

java正则表达式语法是一种模式匹配工具,它非常有用,可以在处理文本和字符串时快速地查找、替换、验证和提取特定的模式和数据。本专题提供java正则表达式语法的相关文章、下载和专题,供大家免费下载体验。

742

2023.07.05

java自学难吗
java自学难吗

Java自学并不难。Java语言相对于其他一些编程语言而言,有着较为简洁和易读的语法,本专题为大家提供java自学难吗相关的文章,大家可以免费体验。

737

2023.07.31

java配置jdk环境变量
java配置jdk环境变量

Java是一种广泛使用的高级编程语言,用于开发各种类型的应用程序。为了能够在计算机上正确运行和编译Java代码,需要正确配置Java Development Kit(JDK)环境变量。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

397

2023.08.01

java保留两位小数
java保留两位小数

Java是一种广泛应用于编程领域的高级编程语言。在Java中,保留两位小数是指在进行数值计算或输出时,限制小数部分只有两位有效数字,并将多余的位数进行四舍五入或截取。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

399

2023.08.02

java基本数据类型
java基本数据类型

java基本数据类型有:1、byte;2、short;3、int;4、long;5、float;6、double;7、char;8、boolean。本专题为大家提供java基本数据类型的相关的文章、下载、课程内容,供大家免费下载体验。

446

2023.08.02

java有什么用
java有什么用

java可以开发应用程序、移动应用、Web应用、企业级应用、嵌入式系统等方面。本专题为大家提供java有什么用的相关的文章、下载、课程内容,供大家免费下载体验。

430

2023.08.02

java在线网站
java在线网站

Java在线网站是指提供Java编程学习、实践和交流平台的网络服务。近年来,随着Java语言在软件开发领域的广泛应用,越来越多的人对Java编程感兴趣,并希望能够通过在线网站来学习和提高自己的Java编程技能。php中文网给大家带来了相关的视频、教程以及文章,欢迎大家前来学习阅读和下载。

16926

2023.08.03

Java JVM 原理与性能调优实战
Java JVM 原理与性能调优实战

本专题系统讲解 Java 虚拟机(JVM)的核心工作原理与性能调优方法,包括 JVM 内存结构、对象创建与回收流程、垃圾回收器(Serial、CMS、G1、ZGC)对比分析、常见内存泄漏与性能瓶颈排查,以及 JVM 参数调优与监控工具(jstat、jmap、jvisualvm)的实战使用。通过真实案例,帮助学习者掌握 Java 应用在生产环境中的性能分析与优化能力。

19

2026.01.20

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
如何进行WebSocket调试
如何进行WebSocket调试

共1课时 | 0.1万人学习

TypeScript全面解读课程
TypeScript全面解读课程

共26课时 | 5万人学习

前端工程化(ES6模块化和webpack打包)
前端工程化(ES6模块化和webpack打包)

共24课时 | 5.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号