Spring Cloud下基于Prometheus的监控体系
当线上部署了大量的微服务后, 就会有越来越多的以下问题:
1、如何快速知道某些服务实例下线?
2、如何快速知道某些服务内存、CPU等异常?
3、如何知道各个服务的请求量等信息?
4、如何排查对应的服务异常?
5、如何自定义监控元素和面板?
完整的监控体系是一套生产线部署的微服务所必须组成的部分
我们基于Prometheus+Grafana搭建线上的监控告警体系, Prometheus作为比较新的监控组件, 在Spring Cloud微服务体系中能够很好的集成和使用, 关于Promethues的描述和使用方式可以详见其官网. Spring Boot Actuator 提供了常用的监控和检查接口, 如health、env、info等, 我们通过集成micrometer-registry-prometheus来增加prometheus端点接口.
监控告警结构设计
服务提供prometheus端点
Spring Cloud项目需要集成如下组件来支持提供prometheus端点:
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>