通过《Spring Boot Admin的介绍及使用》教程的学习,已经可以在 Spring Boot Admin 中查看应用中 Actuator 的监控信息了,但是这种方式有一点不好的地方,就是每个被监控的服务都必须配置 Spring Boot Admin 的地址,还得引入依赖。需要框架源码的朋友可以看我个人简介联系我 推荐分布式架构源码
本节我们将 Spring Boot Admin 也注册到 Eureka 中,然后自动获取 Eureka 中注册的服务信息来统一查看。
将之前 spring-boot-admin 项目复制一份,重命名为 spring-boot-admin-eureka,增加 Eureka 的依赖,代码如下所示。
1 2 3 4 <dependency>
<groupid>org.springframework.cloud</groupid>
<artifactid>spring-cloud-starter-netflix-eureka-client</artifactid>
</dependency>
在启动类上增加 @EnableDiscoveryClient 注解开启注册功能,代码如下所示。
1 2 3 4 5 6 7 8 [object
Object
]@EnableDiscoveryClient
@EnableAdminServer
@SpringBootApplication
public
class
App {
public
static
void
main(
String
[] args) {
SpringApplication.run(App.
class
, args);
}
}
配置 Eureka 注册信息:
1 2 3 4 eureka.client.serviceUrl.defaultZone=http:
//zhangsan:123456@localhost:8761/eureka/
eureka.instance.preferIpAddress=
true
eureka.instance.instance-id={spring.application.name}:spring.application.name:{spring.cloud.client.ipAddress}