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

零基础 监控数据可视化 Spring Boot 2.x(Actuator + Prometheus + Grafana手把手) (上)

一、安装Prometheus

Releases · prometheus/prometheus · GitHubicon-default.png?t=O83Ahttps://github.com/prometheus/prometheus/releases

https://prometheus.io/download/icon-default.png?t=O83Ahttps://prometheus.io/download/

1. 下载适用于 Windows 的二进制文件:

找到最新版本的发布页面,下载 prometheus-<version>.windows-amd64.zip 文件(例如 prometheus-2.40.0.windows-amd64.zip)

2. 解压文件

将下载的 .zip 文件解压到你选择的目录(例如 C:\Prometheus)。

官网下载有点慢,这里推荐使用迅雷

3. 修改配置

这里我们使用默认的

4. 启动

打开命令提示符或 PowerShell:
导航到 Prometheus 解压目录(例如 cd C:\Prometheus)。
启动 Prometheus:
运行以下命令启动 Prometheus:

.\prometheus.exe --config.file=prometheus.yml

如果一切正常,Prometheus 将开始运行并在控制台输出日志信息。
访问 Prometheus Web UI:
打开浏览器并访问 http://localhost:9090,你应该能看到 Prometheus 的 Web 界面

5. 验证指标抓取

检查目标状态:
在 Prometheus Web UI 中,导航到 Status -> Targets,确保你的 Spring Boot 应用程序显示为 UP 状态。
查询指标:
导航到 Graph 页面,尝试输入一些 PromQL 查询语句(例如 up),查看是否能获取到预期的指标数据。


(可选)设置为 Windows 服务

为了方便管理,你可以将 Prometheus 设置为 Windows 服务,使其在系统启动时自动运行。
下载 NSSM (Non-Sucking Service Manager):
访问 NSSM Releases 页面,下载适合你系统的版本。
安装 Prometheus 服务:
使用命令提示符或 PowerShell,导航到 NSSM 解压目录。
运行以下命令安装 Prometheus 服务:

     nssm install Prometheus "C:\Prometheus\prometheus.exe" "--config.file=C:\Prometheus\prometheus.yml"

 启动服务:
使用以下命令启动 Prometheus 服务:

 nssm start Prometheus

 管理服务:
你可以使用 Windows 服务管理器 (services.msc) 来管理和配置 Prometheus 服务。
注意事项
防火墙和网络配置:确保防火墙允许 Prometheus 访问你的应用程序的 /actuator/prometheus 端点。
依赖项:确保你的 Spring Boot 应用程序已经正确配置了 Micrometer 和 Prometheus 支持(如 micrometer-core 和 spring-boot-starter-actuator 依赖)。

二、安装Grafana,也可通过Docker、包管理器等方式

1. 下载

Download Grafana | Grafana LabsOverview of how to download and install different versions of Grafana on different operating systems.icon-default.png?t=O83Ahttps://grafana.com/grafana/download?pg=graf&plcmt=deploy-box-1&platform=windows

打开Web界面,默认地址:http://localhost:3000,初始用户名和密码都是 admin

2. 首次进入会根据提示修改默认密码

3. 添加数据源,选择Prometheus

 输入需要检测的项目地址

保存

 提示保存成功

三、SpringBoot代码配置

1. maven文件

        <dependency>
            <groupId>io.micrometer</groupId>
            <artifactId>micrometer-registry-prometheus</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

2. yml文件

server:
  port: 8080
spring:
  security:
    enabled: false

management:
  endpoints:
    web:
      exposure:
        include: "prometheus,health,info"  # 根据需要添加其他端点
  endpoint:
    prometheus:
      enabled: true
  metrics:
    export:
      prometheus:
        enabled: true
  security:
    enabled: false  # 如果不需要安全保护,可以禁用

3. 配置文件

package com.coldwind.config;
import io.micrometer.prometheus.PrometheusConfig;
import io.micrometer.prometheus.PrometheusMeterRegistry;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
 * Created by tpboreas@qq.com on 2025/01/09 10:40
 */
@Configuration
public class MetricsConfiguration {
    @Bean
    public PrometheusMeterRegistry prometheusMeterRegistry() {
        return new PrometheusMeterRegistry(PrometheusConfig.DEFAULT);
    }
}

启动项目

四、Grafana汉化

右上角设置

选择中文

点击保存,即可生效 

五、推荐配置

加载

样式非常漂亮,非常使用

 大家快去体验一下吧 


http://www.kler.cn/a/502982.html

相关文章:

  • Spring Boot 应用开发入门
  • 【fly-iot飞凡物联】(19):开源飞凡物联项目重启,使用go重写后端代码,感兴趣的小伙伴可以一起参加,使用apache协议开源,招募感兴趣的小伙伴!!
  • 虚拟拨号技术(GOIP|VOIP)【基于IP的语音传输转换给不法分子的境外来电披上一层外衣】: Voice over Internet Protocol
  • git——merge和rebase
  • 探索网络安全:浅析文件上传漏洞
  • Mysql--运维篇--备份和恢复(逻辑备份,mysqldump,物理备份,热备份,温备份,冷备份,二进制文件备份和恢复等)
  • python+pymysql
  • HarmonyOS:@LocalBuilder装饰器: 维持组件父子关系
  • Android Dex VMP 动态加载加密指令流
  • ucharts写的小程序如何解决Y轴小数点问题
  • 《机器学习》之K-means聚类
  • Docker数据管理与网络
  • 科研绘图系列:R语言绘制Y轴截断分组柱状图(y-axis break bar plot)
  • Tox,Python 测试环境的自动化管理器,一个高效操作的 Python 工具!
  • RabbitMQ-延迟交换器
  • 【C】初阶数据结构2 -- 顺序表
  • Chromium 132 编译指南 Windows 篇 - 配置核心环境变量 (三)
  • 【前端】自学基础算法 -- 21.图的广度优先搜索
  • django网上商城系统
  • 【已解决】服务器端直接从网页下载Huggingface全部文件-命令行方式