在SpringBoot中如何通过Prometheus实时监控系统各项指标

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

环境:springboot2.4.12 + 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自动会展示数据库连接信息

图片图片

完毕!!!

责任编辑:武晓燕 来源: Spring全家桶实战案例源码
相关推荐

2023-12-29 08:01:52

自定义指标模板

2021-03-10 11:47:01

CPU服务器指标

2022-07-08 08:00:31

Prometheus监控

2021-03-26 20:37:14

Prometheus监控指标

2023-11-06 01:39:02

Go语言开发

2022-05-12 08:01:26

vmagentprometheus

2021-10-14 08:07:33

Go 应用Prometheus监控

2017-04-20 14:55:36

LinuxPyinotifyPython

2022-03-14 08:25:49

云原生prometheusPushProx

2023-11-16 08:00:00

Datadog部署实时监控

2024-04-08 08:00:00

云监控监控数据Prometheus

2024-06-14 08:19:45

2023-10-11 09:58:07

2020-12-30 08:09:46

运维Prometheus 监控

2021-04-07 14:53:09

Prometheus开源监控

2022-11-08 00:00:00

监控系统Prometheus

2021-08-30 13:08:54

Linux实时监控日志文件

2020-12-29 10:45:22

运维Prometheus-监控

2023-10-09 07:31:25

2022-05-18 08:32:05

服务监控Prometheus开源
点赞
收藏

51CTO技术栈公众号