Turbine 通过 Eureka 不知道每个应用的 contextPath
Turbine doesn't know contextPath of each application through Eureka
在 JBoss 上部署 Spring 支持云的微服务时,我们必须使用 contextPath。 Turbine 似乎没有从 eureka 获取 contextPath,eureka 似乎也没有向微服务请求它。
更多细节:
每个微服务都有自己的 Jboss,并且在 war 中定义了自己的 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 只关心主机名和端口。它允许我们为 info 和 health 定义不同的 UrlPath,尽管这不是 Turbine 需要获取的数据的一部分 hystrix.stream:
eureka:
instance:
statusPageUrlPath: ${server.contextPath}/info
healthCheckUrlPath: ${server.contextPath}/health
有没有办法告诉 Turbine 哪个 contextPath 用于哪个应用程序?这些因应用程序而异,因此我认为 描述的集群范围修复是不够的。
您在普通涡轮中一次只能查看一个集群。 spring-cloud-netflix-hystrix-amqp 我们通过 rabbitmq(不是 http)汇总所有统计数据,因此您可以立即看到所有内容。
在 JBoss 上部署 Spring 支持云的微服务时,我们必须使用 contextPath。 Turbine 似乎没有从 eureka 获取 contextPath,eureka 似乎也没有向微服务请求它。
更多细节:
每个微服务都有自己的 Jboss,并且在 war 中定义了自己的 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 只关心主机名和端口。它允许我们为 info 和 health 定义不同的 UrlPath,尽管这不是 Turbine 需要获取的数据的一部分 hystrix.stream:
eureka:
instance:
statusPageUrlPath: ${server.contextPath}/info
healthCheckUrlPath: ${server.contextPath}/health
有没有办法告诉 Turbine 哪个 contextPath 用于哪个应用程序?这些因应用程序而异,因此我认为
您在普通涡轮中一次只能查看一个集群。 spring-cloud-netflix-hystrix-amqp 我们通过 rabbitmq(不是 http)汇总所有统计数据,因此您可以立即看到所有内容。