简单来讲,Spring Boot Admin是一个管理和监控Spring Boot应用程序的开源软件。每一个应用都认为是一个客户端,经过HTTP或者服务注册发现Spring Cloud(Eureka、Consul等等)注册到admin server中进行展现,Spring Boot Admin UI部分使用AngularJs将数据展现在前端。前端
Spring Boot Admin是一个针对spring-boot的actuator接口进行UI美化封装的监控工具。它能够:在列表中浏览全部被监控spring-boot项目的基本信息,详细的Health信息、内存信息、JVM信息、垃圾回收信息、各类配置信息(好比数据源、缓存列表和命中率)等,还能够直接修改logger的level。java
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
<version>2.0.1</version>
</dependency>
复制代码
server:
port: 8080
spring:
application:
name: service-admin
复制代码
@SpringBootApplication
@EnableAdminServer
public class AdminServerApplication {
public static void main(String[] args) {
SpringApplication.run(AdminServerApplication.class, args);
}
}
复制代码
讲web_a工程接入监控,在工程中加入如下信息web
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.0.1</version>
</dependency>
复制代码
server:
port: 8091
spring:
application:
name: web_a
boot:
admin:
client:
url: http://127.0.0.1:8080 #配置须要接入的admin-server地址
management:
endpoints:
web:
exposure:
include: "*"
复制代码
点击web_a,进入监控管理页面,介绍几个经常使用的TAB界面。spring
在details页面,能看到应用的基本信息以下图。缓存
在Environment页面,能够看到应用中国的各类环境变量。springboot
在Loggers中能够看到各层级包的日志打印级别,而且能够经过界面动态修改。app
package com.itheima.controller;
@RestController
@Slf4j
public class AController {
@GetMapping("/hello")
public String hello(){
log.warn("test 日志切换 warn");
log.info("test 日志切换 info");
log.debug("test 日志切换 debug");
log.error("test 日志切换 error");
return "this is a!";
}
}
复制代码
展现的是系统中各类线程随时间变化的状态,其中黄色部分为WAITING等待状态,而绿色部分为RUNNALE运行状态。spring-boot
HttpTraces显示的是应用随着时间变化的http请求访问量。固然点击下面的每个具体的状况,能够看到请求的详情,也能够经过筛选,只查看访问特定url的请求。工具
本文介绍了SpringbootAdmin的基本搭建,Springboot工程快速接入,以及相关管理界面的介绍。帮助你们快速上手了解SpringBootAdmin对于Springboot工程服务的监控和健康管理。其实Springboot还能够设置通知,好比当某个SpringBoot应用挂了,但愿经过邮件的形式通知某些管理员。这些也都是能够实现的。只是在本文中没有详细说明。this