百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT技术 > 正文

SpringBoot项目使用Prometheus实时监控系统各项指标

wptr33 2024-12-07 17:45 11 浏览

环境:springboot2.3.11 + prometheus1.6.7 + grafana7.5.7


什么是Prometheus

Prometheus 是一个开源的服务监控系统和时间序列数据库。

prometheus存储的是时序数据,即按相同时序(相同名称和标签),以时间维度存储连续的数据的集合。

时序(time series)是由名字(Metric)以及一组key/value标签定义的,具有相同的名字以及标签属于相同时序。

配置依赖

<dependencies>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
  </dependency>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
  </dependency>
  <dependency>
    <groupId>io.micrometer</groupId>
    <artifactId>micrometer-registry-prometheus</artifactId>
  </dependency>
</dependencies>
spring:
  application:
    name: app-prometheus
---
management:
  server:
    port: 9999
  endpoints:
    enabled-by-default: true
    web:
      exposure:
        include: '*'

注册MeterRegistry

@Bean
public MeterRegistryCustomizer<MeterRegistry> configurer(@Value("${spring.application.name}") String name) {
  return (registry) -> registry.config().commonTags("application", name);
}

访问Prometheus actuator

Springboot与Prometheus的整合完成。

Prometheus配置安装

Prometheus下载

通过如上地址下载自己需要的版本。

配置Prometheus

scrape_configs:
  - job_name: 'app-prometheus'
    scrape_interval: 5s
    metrics_path: '/actuator/prometheus'
    static_configs:
    - targets: ['localhost:9999']

localhost:9999为项目的Actuator访问地址。

启动Prometheus

访问

查看监控的应用

自定义meter

@Resource
private MeterRegistry registry ;
private Counter counter ;
	
@PostConstruct
public void init() {
  counter = this.registry.counter("vistor") ;
}

@GetMapping("/count")
public String count() {
  this.counter.increment() ; 
  return "访问次数:" + this.counter.count() ;
}

先多访问几次该接口,通过Prometheus查看

Grafana安装配置

下载

通过上面的地址下载grafana

启动服务

默认用户名密码:admin/admin

添加Prometheus数据源

查看数据

这里展示了visitor中的统计信息

监控数据库连接池

先在grafana上搜索

通过id导入

项目中配置hikari数据库连接池,grafana自动会展示数据库连接信息

完毕!!!

给个关注+转发呗谢谢

公众:Springboot实战案例锦集

Spring Boot Security防重登录及在线总数

Spring Security记住我功能实现及源码分析

Springboot中Redis事务的使用及Lua脚本

SpringBoot 分库分表sharding-sphere

SpringBoot分库分表sharding-sphere2

SpringBoot分库分表sharding-sphere3

SpringBoot多数据源配置详解

SpringMVC自定义注解实现接口调用

Springboot整合ELK日志收集详解步骤

SpringMVC内嵌Tomcat零配置

SpringCloud zuul 动态网关配置

SpringBoot2 整合 OAuth2 资源认证(保护)

springboot 基于数据库的乐观锁实现

SpringBoot开发中几个实用小技巧

相关推荐

如果手机显示无SIM卡,到底是什么意思呢?

一般手机显示无可用SIM卡,可能是如下原因造成的,大家可以了解下,并且进行解决。第一个,SIM卡未正确插入:我们需要检查SIM卡是否已正确插入手机。如果SIM卡没有完全插入,或者插反了,手机可能会显...

赶紧设置!工信部提醒设置手机SIM卡密码

【赶紧设置!工信部提醒设置手机SIM卡密码】平安法治2020近日,针对网友反映的手机失窃导致信息泄露事件,国家工信部立即组织核查处理,要求电信企业加强安全防护,并提醒手机用户设置SIM卡密码。...

手机突然显示无SIM卡?这样做就能恢复~

大家有没经历过明明SIM卡在卡槽里放得好好的,手机却突然显示无SIM卡的状况?没有了SIM卡手机就失去了灵魂,打电话、上网的功能都不能用了。这到底是怎么一回事儿?让小翼帮你来解答~什么是SIM卡?SI...

SK电讯首尔门店遭“围攻”,SIM卡更换服务陷混乱

据yna.co.kr网4月28日报道,28日,韩国SK电讯推出免费SIM卡更换服务以应对网络安全风险,首尔光化门店门前清晨8点便已排起长队。原定于上午10点开始的服务因企业员工需求激增,提前至9点启动...

Spring新闻汇总:Framework、Data、Security、Integration和Modulith发布里程碑版本

...

Springboot特性、快速创建SpringBoot应用、Starter简介

SpringBoot基础本章我们将揭开SpringBoot的神秘面纱。...

Springboot2的熔断、限流和降级讲解

高可用的三大利器是熔断、限流和降级。它们都是在分布式系统中用于保障系统稳定性和可用性的重要策略。熔断(CircuitBreaker):熔断是一种防止故障扩散的机制。当一个服务出现故障或超时,熔断器会...

Spring Cloud 全面解析:分布式系统开发的魔法工具包

SpringCloud全面解析:分布式系统开发的魔法工具包SpringCloud是Java开发者构建分布式系统的得力助手。它基于SpringBoot,为开发者提供了强大的微服务架构支持...

真香!GitHub开源SpringCloud Alibaba全解(全彩版)先到先得!

SpringCloudAliababa简介SpringCloudAlibaba是阿里巴巴集团开源的一套微服务架构解决方案。...

聊聊langchain4j-spring的1.0.0-beta版本的更新

序本文主要研究一下langchain4j-spring的1.0.0-beta版本的更新1.0.0-beta1...

Java异步编程(5种异步实现方式详解)

Java面试经常会问到:异步操作?什么是异步?与同步有什么区别?Java异步的是如何实现?有哪些异步实现方式?下面我一一来详解异步@mikechen什么是异步?...

全部开源的快速开发平台-开源字节

《硕宇精选》专注于探索、发现、分享开源技术应用和优质开源项目。本期推荐的优质项目是开源字节是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。该平台基于SpringBoot+MyBat...

Trip.com launches 700 products in 15 countries

OnlinetravelagencyTrip.comhasofferedmorethan700newoverseasproducts,visiting15countries...

Spring事务

使用Spring事务Spring事务介绍Spring事务的特点:1.多种事务API,Spring事务都可兼容;2.程序接入简单;3.与已有的Spring框架集成。...

牛刀小试——五分钟入门Spring Boot

万物皆可HelloWorld在一个程序员的眼里,万物皆可HelloWorld。SpringBoot当然也不例外。下面一起来完成我们的第一个SpringBoot程序。...