使用Prometheus监控你的SpringBoot项目

2022-08-11 16:49:21 浏览数 (1)

1、依赖的maven包

其实我们市面上的springboot项目基本都是基于此actutor做监控的。或者是直接用或者是代理一层做的,所以说prometheus的监控也是通过此包进行的,所以说上边我们不仅要导入actuator这个包还要导入prometheus的包,因为prometheus是对actuator进行一层代理。至于这里的第三个包micrometer-jvm-extrs其实要不要都不要紧,第三个包主要用来监控jvm的应该是。

代码语言:javascript复制
  <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
  </dependency>
  <dependency>
      <groupId>io.micrometer</groupId>
      <artifactId>micrometer-registry-prometheus</artifactId>
  </dependency>
  <dependency>
      <groupId>io.github.mweirauch</groupId>
      <artifactId>micrometer-jvm-extras</artifactId>
      <version>0.2.0</version>
  </dependency>

2.暴露springboot项目的监控点

我们做监控的时候都是通过打点做的,在springBoot中提供了

代码语言:javascript复制
  <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
  </dependency>

做监控,对于监控来说必然要配置一些配置信息,这些信息往往到和prometheus的监控面板相对应,故此我们看到我们需要添加的配置文件如下所示:

代码语言:javascript复制
代码语言:javascript复制
server.port=8081
spring.application.name=tianjl

## 暴露所有的actuator endpoints
management.endpoints.web.exposure.include=*

## Grafana上的应用名字
management.metrics.tags.application=${spring.application.name}

在配置好上述prometheus的配置之后,相当于我们配置好了内外呼应的外,那么剩下的内就是我们的prometheus了。

3.配置promethues工作任务

我上次说过prometheus监控的时候有个配置文件,这个配置文件中需要配置任务,然后才是prometheus去拉去监控信息,因此我们就需要在配置文件中添加我们刚刚创建的springboot项目的地址信息,这个地址信息就是我们向外暴露的endPoints。我们看下配置文件如何编写。

配置文件如下:

代码语言:javascript复制
  - job_name: 'bounter-monitor'   #prometheus任务名称
    scrape_interval: 5s  #每五秒抓取一次数据
    metrics_path: '/actuator/prometheus'   #数据来源的地址
    static_configs:
      - targets: ['localhost:8081']   #拉去数据的地址

这块其实拉监控信息的地址是localhost:8081/actuator/prometheus,您可以在浏览器中打开这个地址,是会出现很多监控信息的。prometheus就是拉的这些数据。

在配置好prometheus的配置信息之后,我们重启prometheus,并查看服务状态。

之前我们说promethues仅仅相当于一个数据拉取和存储的地方,其提供了强大的数据查询能力。但他的监控WEB端做的不是很好,所以经常需要让配合grafana做监控处理。所以这块我们在gafana中添加我们springboot相关的监控面板。

4、导入监控面板和监控

首先要说的是gafana并不是说什么监控面板都有,很多监控面板还是需要从网上获取,或者将其下载下载,然后再传上去,第二种形式就是说针对gafana的机房部署。这块我们还是简单介绍一下直接从网上下载吧。

首先我们到gafana官网上。https://grafana.com/grafana/dashboards

首先到其官方网站上,找到面板这个栏目。

我们在筛选框找中输入springboot

发现面板好多呀。我们就选择第一个进去看看吧。

发现里边有详细的教程,就是咋进行讲解的这个教程。所以你知道以后添加任意的监控面板了吗?不晓得你们会了没,反正我大概是会了。之后呐,我们在我们的gafana中添加这个监控面板。

添加好gafana面板之后,我们就在home中刷新一下,发现我们的项目已经被监控了。哈哈,这个效果怎么样?

总结:通过上述文章,我们可能大概了解了prometheus监控服务的一个基本的过程,但是可能还不够深入,具体来说你既然监控了springBoot,但是我总不能时时刻刻就这么盯着这个美丽的大屏幕吧,咋不是拍网络大片的呀,故此我们注重的是如何报警,这个后边再说吧,先这样吧!

早呀~

jvm

0 人点赞