1

我实际上正在尝试使用 Spring Cloud 的微服务。我有 2 种应用程序(mysolutionmysolution-identity-provider)。它们都启用了 Hystrix 和 Actuator,并通过hystrix.stream端点提供信息。我也充分利用 Eureka、Ribbon 和 Feign 进行内部通信。

我正在尝试设置HystrixDashboardTurbine在单独的服务器上。这是我的application.yml

turbine:
    aggregator:
        clusterConfig:MYSOLUTION
    appConfig: mysolution,mysolution-identity-provider

当我启动 Turbine 服务器时,它通过使用Eureka. 但它只从其中一个应用程序 ( mysolution) 中检索 Hystrix Stream。

这是日志:

EurekaInstanceDiscovery: Fetching instance list for apps: [mysolution, mysolution-identity-provider]
EurekaInstanceDiscovery: Fetching instances for app: mysolution
EurekaInstanceDiscovery: Received instance list for app: mysolution, size=1
EurekaInstanceDiscovery: Fetching instances for app: mysolution-identity-provider
EurekaInstanceDiscovery: Received instance list for app: mysolution-identity-provider, size=1
InstanceObservable: Retrieved hosts from InstanceDiscovery: 2
InstanceObservable: Found hosts that have been previously terminated: 0
InstanceObservable: Hosts up:2, hosts down: 0
InstanceMonitor: Url for host: http://mac-mini.local:8080/hystrix.stream MYSOLUTION

有没有办法让 Turbine 从两个应用程序中检索流?到目前为止,我成功地遵循了 Spring Cloud 文档,关于 Hystrix Turbine(没有 AMQP)的部分仍然......多云......

4

1 回答 1

3

设置以下应该有效:

turbine:
  aggregator:
    clusterConfig: MYSOLUTION,MYSOLUTION-IDENTITY-PROVIDER

您需要 clusterConfig 中的每个服务。而且您需要将集群放在涡轮网址中http://{turbine-hostname}:{turbine-port}/turbine.stream?cluster=MYSOLUTION

于 2015-07-16T16:34:47.897 回答