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

spring boot + Prometheus + Grafana 实现项目监控

一、引入依赖

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

二、ymal配置

# 配置actuator监视器的全部监控端点打开
management:endpoints:web:exposure:include: "*"endpoint:prometheus:enabled: truehealth:show-details: alwaysmetrics:export:prometheus:enabled: true # 启用Prometheusspring:application:name: easy-brilliant

三、配置数据格式转化

package easy.brilliant.configuration;import io.micrometer.core.instrument.Clock;
import io.micrometer.core.instrument.MeterRegistry;
import io.micrometer.prometheus.PrometheusConfig;
import io.micrometer.prometheus.PrometheusMeterRegistry;
import io.prometheus.client.CollectorRegistry;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.actuate.autoconfigure.metrics.MeterRegistryCustomizer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;@Configuration
public class PrometheusConfiguration {@Beanpublic CollectorRegistry collectorRegistry() {return new CollectorRegistry();}@Beanpublic PrometheusMeterRegistry prometheusMeterRegistry(PrometheusConfig config, CollectorRegistry collectorRegistry) {return new PrometheusMeterRegistry(config, collectorRegistry, Clock.SYSTEM);}@BeanMeterRegistryCustomizer<MeterRegistry> configurePrometheus(@Value("${spring.application.name}") String name){return (registry -> registry.config().commonTags("application",name));}}

四、安装并配置Prometheus

下载地址:https://prometheus.io/ (下载最新版) 我的csdn地址:https://download.csdn.net/download/weixin_42172472/90579623

prometheus 配置:

# my global config
global:scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.# scrape_timeout is set to the global default (10s).# Alertmanager configuration
alerting:alertmanagers:- static_configs:- targets:# - alertmanager:9093# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:# - "first_rules.yml"# - "second_rules.yml"# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:- job_name: 'easy-brilliant'metrics_path: '/actuator/prometheus'static_configs:- targets: ['localhost:8047'] # 使用你的Spring Boot应用程序的实际主机和端口替换

测试是否配置成功,请求 http://127.0.0.1:9090/targets,出现如下界面就算请求成功

五、安装并配置Grafana

下载Grafana : Download Grafana | Grafana Labs  ,我的csdn地址:https://download.csdn.net/download/weixin_42172472/90579615

安装并启动grafana-server.exe ,访问 http://127.0.0.1:3000/

1.Grafana 数据源配置

配置 Connection,点击Save & test 测试是否配置成功。

2.面板配置

点击Import 

输入ID 21319,选择数据源Prometheus,点击load,监控成功


http://www.mrgr.cn/news/97549.html

相关文章:

  • Android 学习之 Navigation导航
  • PyTorch 笔记
  • 考研单词笔记 2025.04.07
  • 分割回文串 复原IP地址(Java)
  • 深入理解PCA降维:原理、实现与应用
  • Proteus vs Multisim:电路设计与仿真软件对比
  • Java 三大特性—多态
  • 高德地图 3D 渲染-区域纹理图添加
  • 文献分享: Muvera多向量到单向量的转化方法(Part3——引理证明的补充)
  • 沧州铁狮子
  • ES:geoip_databases
  • 巧用数论与动态规划破解包子凑数问题
  • 计算机面试八股(自整)
  • 无人机装调与测试
  • vue3 脚手架初始化项目生成文件的介绍
  • 七种驱动器综合对比——《器件手册--驱动器》
  • 十四届蓝桥杯Java省赛 B组(持续更新..)
  • babel-runtime 如何缩小打包体积
  • docker的几种网络模式
  • Java反射实战-特殊嵌套格式JSON自定义解析装配