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

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


什么是Prometheus

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

SpringBoot项目使用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实时监控系统各项指标

 

Springboot与Prometheus的整合完成。

Prometheus配置安装

Prometheus下载

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

 

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

配置Prometheus

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

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

启动Prometheus

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

 

访问

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

 

查看监控的应用

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

 

SpringBoot项目使用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查看

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

 

Grafana安装配置

下载

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

 

通过上面的地址下载grafana

启动服务

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

 

默认用户名密码:admin/admin

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

 

添加Prometheus数据源

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

 

查看数据

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

 

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

 

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

监控数据库连接池

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

 

先在grafana上搜索

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

 

通过id导入

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

 

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

 

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

 

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

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

 

完毕!!!

给个关注+转发呗谢谢

公众:Springboot实战案例锦集

 
标签: springaopspringboot
好文要顶 关注我 收藏该文  
0
0
 
 
 
« 上一篇: Springboot整合百度开源分布式ID生成器UIDGenerator
posted @ 2021-07-10 07:42  FastCoder  阅读(4)  评论(0)  编辑  收藏  举报

 

 

 

posted @ 2021-07-11 07:16  FastCoder  阅读(741)  评论(0编辑  收藏  举报