我正在尝试查看使用Spring Boot运行的两个不同服务。这两项服务都在Eureka上很好地注册,现在我想在Turbine webapplication中绘制一些Hystrix数据。
使用Turbine测试单一服务时效果很好:
http://localhost:2222/hystrix.stream (service1)
http://localhost:3333/hystrix.stream (service2)
我试图在仪表板上查看两个服务的视图但是我只尝试了Turbine配置中的第一个服务。
turbine:
clusterNameExpression: new String('default')
appConfig: service1,service2
在尝试将数据输入Turb.stream时,我似乎遇到了障碍。
任何提示或提示?
答案 0 :(得分:0)
要回答我自己的问题,似乎Turbine无法监控与主机名绑定的同一主机上的更多服务。见https://github.com/Netflix/Turbine/issues/88
Turbine有两种运行模式:
解决方法是使用能够完成我所需要的东西的TurbineAMQP。它涉及更多的基础设施,但效果很好!
答案 1 :(得分:0)
首先,我认为Turbine并不像Marco所说的那样是主人专属
......似乎Turbine无法监控同一主机上的更多服务,因为它绑定到主机名
我使用Hystrix Dashboard App(不推荐使用)实现Turbine,使用相同的spring.application.name聚合2个服务。
我发现Turbine如何收集hystrix流,每个Turbine应用程序将在turbine.appConfig
application.properties
中使用给定名称在Eureka Registry中查找服务,默认为spring.application.name
或eureka.instance.appname
明确提供您的服务,无论其主机是什么。直到现在涡轮机流已准备就绪。
将返回上一步中请求中作为服务ID的名称列表,其中至少有一个名称应与您在turbine.aggregator.clusterConfig
中提供的名称列表相匹配。
当您在Hystrix仪表板的主页上键入http://[turbine-app-host:port]/turbine.stream?cluster=[cluster name]
时,cluster name
参数应该是turbine.aggregator.clusterConfig
中匹配名称之一。