首先,我不是直接使用Spring Cloud Config,而是通过Spring Cloud Hystrix启动器传递的。
仅使用时@EnableHystrix,Spring Cloud还会尝试查找配置服务器,但由于我未使用配置服务器,因此预期不会成功。据我所知,该应用程序运行正常,但问题出在状态检查中。显示健康,DOWN因为没有配置服务器。
@EnableHystrix
DOWN
浏览项目源代码时,我希望spring.cloud.config.enabled=false禁用此功能链,但这不是我所看到的。
spring.cloud.config.enabled=false
升级到1.0.0.RC1(添加此属性)并使用后@EnableCircuitBreaker:
1.0.0.RC1
@EnableCircuitBreaker
{ status: "DOWN", discovery: { status: "DOWN", discoveryClient: { status: "DOWN", error: "org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.cloud.client.discovery.DiscoveryClient] is defined" } }, diskSpace: { status: "UP", free: 358479622144, threshold: 10485760 }, hystrix: { status: "UP" }, configServer: { status: "DOWN", error: "org.springframework.web.client.ResourceAccessException: I/O error on GET request for "http: //localhost: 8888/bootstrap/default/master":Connection refused: connect; nested exception is java.net.ConnectException: Connection refused: connect" } }
检查configprops端点后, 似乎 我的属性已被覆盖。请注意,父级已启用configClient。
parent: { configClientProperties: { prefix: "spring.cloud.config", properties: { password: null, discovery: { enabled: false, serviceId: "CONFIGSERVER" }, name: "bootstrap", label: "master", env: "default", uri: "http://localhost:8888", enabled: true, failFast: false, username: null } } }, configClientProperties: { prefix: "spring.cloud.config", properties: { password: null, discovery: { enabled: false, serviceId: "CONFIGSERVER" }, name: "bootstrap", label: "master", env: "default", uri: "http://localhost:8888", enabled: false, failFast: false, username: null } }
如果似乎我没有正确执行此操作,任何方向都将不胜感激。
引导过程中需要配置服务器,这就是父属性源。看起来您需要做的就是将您的spring.cloud.config.enabled属性移动到bootstrap.yml(或.properties)。
spring.cloud.config.enabled