使用Prometheus监控SpringBoot应用

经过以前的文章咱们使用Prometheus监控了应用服务器node_exporter,数据库mysqld_exporter,今天咱们来监控一下你的应用。(本文以SpringBoot 2.1.9.RELEASE 做为监控目标)node

编码

添加依赖

使用Prometheus监控SpringBoot应用只须要在pom文件添加以下两个依赖:mysql

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
	<groupId>io.micrometer</groupId>
	<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

修改配置

修改application.properties或者application.yml文件,对外暴露监控端点web

spring.application.name = blog
management.endpoints.web.exposure.include = prometheus
management.metrics.tags.application = ${spring.application.name}

启动应用

访问http://localhost:50378/actuator/查看开放端点 filespring

访问http://localhost:50378/actuator/prometheus查看Metrics filesql

以前的文章中都是监控一个实例,此次我们把端口设置成随机,启动两个实例,等下看看监控效果。数据库

监控配置

Prometheus

修改prometheus.yml,增长监控任务服务器

- job_name: 'SpringBoot'
    metrics_path: '/actuator/prometheus'
    static_configs:
    - targets: ['10.1.61.10:50378','10.1.61.10:50822']

重启Prometheus,查看监控状态。 fileapp

Grafana

直接从grafana官网寻找JVM监控DashBoard,而后导入到Grafana中(在环境搭建篇中已经讲述了操做过程,这里就再也不赘述)。 filespring-boot

查看效果性能

file file

彩蛋

咱们关掉其中一个SpringBoot实例,等2分钟,而后邮箱会收到这样一封告警邮件 file

怎么实现的呢?我们下期有缘再见!


相关文章

欢迎关注个人我的公众号:JAVA日知录

相关文章
相关标签/搜索