1
0
mirror of https://gitee.com/mirrors/Spring-Cloud-Alibaba.git synced 2021-06-26 13:25:11 +08:00

Polish alibaba/spring-cloud-alibaba/#902 : [Nacos Discovery] create NacosDiscoveryHealthIndicator

This commit is contained in:
mercyblitz 2020-02-04 18:39:30 +08:00
parent d1e4711e98
commit 4106d48810
2 changed files with 9 additions and 8 deletions

View File

@ -16,7 +16,6 @@
*/
package com.alibaba.cloud.nacos.discovery.actuate.health;
import com.alibaba.cloud.nacos.NacosDiscoveryProperties;
import com.alibaba.nacos.api.naming.NamingService;
import org.springframework.boot.actuate.health.AbstractHealthIndicator;
@ -26,22 +25,20 @@ import org.springframework.boot.actuate.health.HealthIndicator;
/**
* The {@link HealthIndicator} for Nacos Discovery
*
* @author <a href="mailto:mercyblitz@gmail.com">Mercy</a>
* @since 2.2.0
*
* @see HealthIndicator
*/
public class NacosDiscoveryHealthIndicator extends AbstractHealthIndicator {
private final NacosDiscoveryProperties nacosDiscoveryProperties;
private final NamingService namingService;
public NacosDiscoveryHealthIndicator(
NacosDiscoveryProperties nacosDiscoveryProperties) {
this.nacosDiscoveryProperties = nacosDiscoveryProperties;
public NacosDiscoveryHealthIndicator(NamingService namingService) {
this.namingService = namingService;
}
@Override
protected void doHealthCheck(Health.Builder builder) throws Exception {
NamingService namingService = nacosDiscoveryProperties.namingServiceInstance();
// Just return "UP" or "DOWN"
String status = namingService.getServerStatus();
// Set the status to Builder

View File

@ -30,7 +30,10 @@ import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* The AutoConfiguration class for Nacos Discovery's Endpoints
*
* @author xiaojing
* @author <a href="mailto:mercyblitz@gmail.com">Mercy</a>
*/
@Configuration(proxyBeanMethods = false)
@ConditionalOnClass(Endpoint.class)
@ -49,6 +52,7 @@ public class NacosDiscoveryEndpointAutoConfiguration {
@ConditionalOnEnabledHealthIndicator("nacos-discovery")
public HealthIndicator nacosDiscoveryHealthIndicator(
NacosDiscoveryProperties nacosDiscoveryProperties) {
return new NacosDiscoveryHealthIndicator(nacosDiscoveryProperties);
return new NacosDiscoveryHealthIndicator(
nacosDiscoveryProperties.namingServiceInstance());
}
}