在我之前的 《 Spring Boot 应用监控实战》 一文中,讲述了如何利用 Spring Boot Admin 1.5.X 版本来可视化地监控 Spring Boot 应用。说时迟,那时快,现在 Spring Boot Admin 都更新到 2.0 版本了,并且可以对当下热门的 Spring Boot 2.0 和 Spring Cloud Finchley.RELEASE 进行监控,因此本文就来了解并实践一下!
Spring Boot Admin 2.0 变化还是挺多的,具体参考 官网说明,这里列几条主要的:
使用 Vue.js 重写了 UI 界面,漂亮得不像实力派
直接集成了基于 spring security 的认证,无需引入第三方模块
加入 session endpoint 的监控支持
等等...
下面就实际试验来操作感受一下!
<dependencies>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-server</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-server-ui</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
@SpringBootApplication
@EnableAdminServer
public class SbaServer20Application {
public static void main(String[] args) {
SpringApplication.run(SbaServer20Application.class, args);
}
}
浏览器打开 localhost:8080
,就可以看到小清新的页面了
可以看到这个 UI 的变化和 1.5.X 时代的差距还是蛮大的,此时被监控的应用数目还为 0。
接下来我们就来创建一个待监控的 Spring Boot 2.0 示例。
此处我们依然创建一个 Spring Boot 2.0.3.RELEASE 的应用,然后加入到 Spring Boot Admin 之中进行监控
<dependencies>
<dependency>
<groupId>de.codecentric</groupId>
<artifactId>spring-boot-admin-starter-client</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
server.port=8081
spring.application.name=Spring Boot Client
spring.boot.admin.client.url=http://localhost:8080
management.endpoints.web.exposure.include=*
此时 Spring Boot Admin 的页面上应用上线的消息推送过来了:
被监控应用上线之后,我们进入 Spring Boot Admin 页面鼓捣看看
作者更多的 SpringBt 实践文章在此:
如果有兴趣,也可以抽点时间看看作者一些关于容器化、微服务化方面的文章:
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.