一,Actuator + AdminUI服务监控中心介绍
1,什么是SpringBoot监控中心
针对微服务器监控、服务器内存变化(堆内存,线程,日志管理等)、检测服务配置连接池是否可用(模拟访问、懒加载)、统计现有Bean(通过Spring容器)、Http接口(@RequestMapping)的一系列数据管理。Actuator监控应用只通过JSON形式返回数据统计结果,没有UI界面处理;AdminUI则内置Actuator服务监控,并对返回JSON数据进行图形化处理展示。
2,为什么要用SpringBoot监控中心
Actuator是SpringBoot的一个附加功能,可以帮助应用程序在生产环境运行时的监控和管理。可以使用HTTP的各个请求路径来监管、审计、收集引用的运行情况,特别对于微服务管理十分有意义;
AdminUI内置了Actuator服务,是对监控服务的图形化界面补充;好啦废话不多说了,开始搭建吧。
- 二,actuator客户端:
- 1,maven依赖引入
- <!-- actuator监控 -->
<dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-actuator</artifactId>
- </dependency>
- <!-- AdminUI客户端依赖 -->
- <dependency>
- <groupId>de.codecentric</groupId>
- <artifactId>spring-boot-admin-starter-client</artifactId>
- <version>2.0.0</version>
- </dependency>
- <!-- Spring Boot Actuator对外暴露引用的监控信息, Jolokia提供使用HTTP接口获取json -->
- <dependency>
- <groupId>org.jolokia</groupId>
- <artifactId>jolokia-core</artifactId>
- </dependency>
- <!-- 服务包引用1.1.1版本, maven仓库已经不支持下载, 手动引入1.1版本 -->
- <dependency>
- <groupId>com.googlecode.json-simple</groupId>
- <artifactId>json-simple</artifactId>
- </dependency>
- 2,bootstrap.yml配置:
- #actuator管理
- management:
- endpoints:
- web:
- exposure:
- include: "*"
- endpoint:
- shutdown:
- enabled: true
- health:
- show-details: always
- #配置actuator admin主机地址
- spring:
- boot:
- admin:
- client:url: http://localhost:8080
三,actuator服务端:
- 1,maven依赖引入
- <!-- AdminUI服务端依赖 -->
- <dependency>
- <groupId>de.codecentric</groupId>
- <artifactId>spring-boot-admin-starter-server</artifactId>
- <version>2.0.0</version>
- </dependency>
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-webflux</artifactId>
- </dependency>
- <!-- Spring Boot Actuator对外暴露引用的监控信息, Jolokia提供使用HTTP接口获取json -->
- <dependency>
- <groupId>org.jolokia</groupId>
- <artifactId>jolokia-core</artifactId>
- </dependency>
- <!-- Spring Boot Actuator依赖 -->
- <dependency>
- <groupId>org.springframework.boot</groupId>
- <artifactId>spring-boot-starter-actuator</artifactId>
- </dependency>
- <!-- 服务包引用1.1.1版本, maven仓库已经不支持下载, 手动引入1.1版本 -->
- <dependency>
- <groupId>com.googlecode.json-simple</groupId>
- <artifactId>json-simple</artifactId>
- <version>1.1</version>
- </dependency>
2,在启动类上加@EnableAdminServer
3.启动actuator服务端,客户端
4,访问:http://localhost:客户端端口/actuator/beans Spring容器中的所有注册Bean
访问:http://localhost:客户端端口/actuator/mappings 全部HTTP接口统计
访问:http://localhost:客户端端口/actuator/beans/threaddump 系统中的所有线程
访问:http://localhost:客户端端口/actuator/beans/health 对所有懒加载的服务连接进行虚拟连接测试
5,访问:http://localhost:8080/#/applications 以图形化的方式展现actuator返回给我们的客户端运行情况json数据
四,图形: