35. Spring Boot 2.1.3.RELEASE 应用监控【监控信息可视化】

news/2025/2/27 10:12:17

在 Spring Boot 2.1.3.RELEASE 中实现监控信息可视化可以通过多种方式,下面为你详细介绍使用 Spring Boot Actuator 结合 Grafana 和 Prometheus 以及使用 Spring Boot Admin 这两种常见方法。

方法一:Spring Boot Actuator + Grafana + Prometheus

1. 添加依赖

pom.xml 中添加以下依赖:

<dependencies>
    <!-- Spring Boot Actuator -->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <!-- Micrometer Registry Prometheus -->
    <dependency>
        <groupId>io.micrometer</groupId>
        <artifactId>micrometer-registry-prometheus</artifactId>
    </dependency>
</dependencies>
2. 配置 Spring Boot Actuator

application.properties 中添加以下配置:

# 开启所有端点
management.endpoints.web.exposure.include=*
3. 启动 Prometheus
  • 下载 Prometheus 并解压。
  • 编辑 prometheus.yml 文件,添加对 Spring Boot 应用的监控配置:
scrape_configs:
  - job_name: 'spring-boot-app'
    metrics_path: '/actuator/prometheus'
    static_configs:
      - targets: ['localhost:8080']
  • 启动 Prometheus:在解压后的目录下执行 ./prometheus --config.file=prometheus.yml
4. 启动 Grafana
  • 下载并安装 Grafana。
  • 启动 Grafana 服务。
  • 登录 Grafana 界面(默认地址:http://localhost:3000,默认用户名和密码:admin/admin)。
  • 配置 Prometheus 作为数据源:在 Grafana 中,点击 Configuration -> Data Sources -> Add data source,选择 Prometheus,并填写 Prometheus 的地址(如 http://localhost:9090)。
  • 创建仪表盘(Dashboard):点击 Create -> Dashboard,然后添加各种图表来展示从 Prometheus 获取的监控指标。

方法二:Spring Boot Admin

1. 创建 Spring Boot Admin Server

创建一个新的 Spring Boot 项目,添加以下依赖:

<dependencies>
    <dependency>
        <groupId>de.codecentric</groupId>
        <artifactId>spring-boot-admin-starter-server</artifactId>
        <version>2.1.6</version>
    </dependency>
</dependencies>

application.properties 中添加以下配置:

server.port=8080

在主应用类上添加 @EnableAdminServer 注解:

java">import de.codecentric.boot.admin.server.config.EnableAdminServer;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@EnableAdminServer
public class AdminVisualServerApplication {
    public static void main(String[] args) {
        SpringApplication.run(AdminVisualServerApplication.class, args);
    }
}
2. 将 Spring Boot 应用注册到 Admin Server

新创建一个服务,在需要监控的 Spring Boot 应用中添加以下依赖:

<dependencies>
    <dependency>
        <groupId>de.codecentric</groupId>
        <artifactId>spring-boot-admin-starter-client</artifactId>
        <version>2.1.6</version>
    </dependency>
</dependencies>

application.properties 中添加以下配置:

server.port=8081
spring.boot.admin.client.url=http://localhost:8080
management.endpoints.web.exposure.include=*

创建启动类:

java">import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class AdminVisualClientApplication {
    public static void main(String[] args) {
        SpringApplication.run(AdminVisualClientApplication.class, args);
    }
}
3. 访问 Spring Boot Admin 界面

启动 Spring Boot Admin Server 和需要被监控的应用,访问 http://localhost:8080 即可看到监控信息的可视化界面。

在这里插入图片描述
在这里插入图片描述

注意事项

  • 确保各组件的版本兼容性,避免因版本不匹配导致的问题。
  • 可以根据实际需求对监控指标和可视化界面进行进一步的定制和优化。

http://www.niftyadmin.cn/n/5869933.html

相关文章

TCP/IP 5层协议簇:数据链路层(交换机工作原理)

目录 1. 数据链路层 2. 帧 3. 工作在数据链路层的设备 4. 交换机工作原理 1. 数据链路层 数据链路层&#xff08;2层Data Link Layer&#xff09;&#xff1a;传输单元是帧、这层工作的主要设备二层交换机、网卡 2. 帧 帧的结构如下&#xff1a;帧最大1518字节 如下&…

前端项目配置初始化

creat-vue 安装 https://cn.vuejs.org/guide/quick-start.html 官网复制npm安装语句 cmd窗口创建文件夹 npm create vue3.12.2安装webstorm启动vue项目 https://www.jetbrains.com/webstorm/download/other.html 2024.3.2.1 安装依赖 下载包node_modules package 运行服…

鸿蒙开发第4篇__关于在鸿蒙应用中使用Java语言进行设计

本博文很重要 HarmonyOS从 API8 开始不再支持使用Java作为开发语言&#xff0c;未来的新功能将在ArkTS中实现. API 8对应的是HarmonyOS 3.0.0版本。请看下图&#xff1a; 因此&#xff0c; 读者如果看到类似《鸿蒙应用程序开发》(2021年版本 清华大学出版计)书 还使用Java语言…

[深度学习]基于C++和onnxruntime部署yolov12的onnx模型

基于C和ONNX Runtime部署YOLOv12的ONNX模型&#xff0c;可以遵循以下步骤&#xff1a; 准备环境&#xff1a;首先&#xff0c;确保已经下载后指定版本opencv和onnruntime的C库。 模型转换&#xff1a; 安装好yolov12环境并将YOLOv12模型转换为ONNX格式。这通常涉及使用深度学习…

在zotero里部署papaerschat插件,以接入现有大模型

papaerschat插件里集成了openAI的GPT3.5、gpt-4o、gpt-mini大模型以及Claude3、Gemini、Deepseek等大模型。通过接入这些大模型可以辅助我们阅读论文。以部署方式如下&#xff1a; 1.下载zotero的插件市场&#xff0c;用以管理zotero里的插件。下载地址&#xff1a; https://…

子组件如何通过v-model实现数据的双向绑定

在 Vue 中&#xff0c;v-model 是一种语法糖&#xff0c;用于在表单元素或者组件上实现双向数据绑定。 下面分别介绍在 Vue 2 和 Vue 3 里子组件使用 v-model 实现数据双向绑定的具体方式。 Vue 2 中使用 v-model 实现双向绑定 在 Vue 2 里&#xff0c;v-model 本质上是 :va…

2025最新Flask学习笔记(对照Django做解析)

前言&#xff1a;如果还没学Django的同学&#xff0c;可以看Django 教程 | 菜鸟教程&#xff0c;也可以忽略下文所提及的Django内容&#xff1b;另外&#xff0c;由于我们接手的项目大多都是前后端分离的项目&#xff0c;所以本文会跳过对模板的介绍&#xff0c;感兴趣的朋友可…

《论企业集成平台的理解与应用》审题技巧 - 系统架构设计师

企业集成平台的理解与应用——论文写作框架 一、考点概述 本论题“企业集成平台的理解与应用”主要考察的是计算机软件测试工程师对于企业集成平台&#xff08;EIP&#xff09;的深入理解以及在实际项目中的应用能力。论题涵盖了以下几个核心内容&#xff1a; 首先&#xff…