Turbine通过Eureka不知道每个应用程序的contextPath

时间:2015-05-21 12:12:00

标签: spring-cloud hystrix turbine netflix-eureka

在JBoss上部署支持Spring Cloud的微服务时,我们必须使用contextPath。 Turbine似乎没有从eureka获取contextPath,而且eureka似乎没有向微服务提出它。

更多细节:

每个微服务都有自己的Jboss,以及战争中定义的自己的contextPath,如下:

hostname1:port1/products
hostname2:port2/users
hostname3:port3/orders

在contextPath(不使用management.context-path)之后公开端点(执行器和我们自己的端点):

hostname1:port1/products/env
hostname1:port1/products/info
hostname1:port1/products/books
hostname1:port1/products/books/123

Eureka只关心主机名和端口。它允许我们为信息和健康定义不同的UrlPath,尽管这不是Turbine需要访问hystrix.stream的数据的一部分:

eureka:
  instance:
    statusPageUrlPath: ${server.contextPath}/info
    healthCheckUrlPath: ${server.contextPath}/health

有没有办法告诉Turbine哪个contextPath用于哪个应用程序?每个应用程序都有所不同,因此我认为描述here的集群范围的修复程序是不够的。

1 个答案:

答案 0 :(得分:0)

您只能在普通涡轮机中一次查看一个群集。使用spring-cloud-netflix-hystrix-amqp,我们通过rabbitmq(而非http)汇总所有统计信息,因此您可以一次查看所有内容。