I have an implementation of turbine that is able to discover running services via Eureka:
2015-09-08 11:40:13.727 INFO 13112 --- [ Timer-0] o.s.c.n.turbine.EurekaInstanceDiscovery : Fetching instance list for apps: [policy-service]
2015-09-08 11:40:13.727 INFO 13112 --- [ Timer-0] o.s.c.n.turbine.EurekaInstanceDiscovery : Fetching instances for app: policy-service
2015-09-08 11:40:13.727 INFO 13112 --- [ Timer-0] o.s.c.n.turbine.EurekaInstanceDiscovery : Received instance list for app: policy-service, size=1
2015-09-08 11:40:13.727 INFO 13112 --- [ Timer-0] c.n.t.discovery.InstanceObservable : Retrieved hosts from InstanceDiscovery: 1
2015-09-08 11:40:13.728 INFO 13112 --- [ Timer-0] c.n.t.discovery.InstanceObservable : Found hosts that have been previously terminated: 0
2015-09-08 11:40:13.728 INFO 13112 --- [ Timer-0] c.n.t.discovery.InstanceObservable : Hosts up:1, hosts down: 0
Hystrix is running on the client app, policy-service. I am able to view its stream and see it in the hystrix dashboard.
The issue is that when I view the Turbine stream, I get this:
: ping
data: {"reportingHostsLast10Seconds":0,"name":"meta","type":"meta","timestamp":1441734488823}
and when I view it in the Hystrix dashboard with the URI http://localhost:8095/turbine.stream?cluster=DEV
, I just see "Loading..."
I have tried everything mentioned in this post to no avail.
Here is my turbine services' application.yml:
turbine:
aggregator:
clusterNameExpression: new String("default")
clusterConfig: DEV
#http://localhost:8095/turbine.stream?cluster=DEV
appConfig: policy-service
InstanceMonitor:
eventStream:
skipLineLogic:
enabled: false
I've tried this without clusterConfig and without clusterNameExpression.
Here's my bootstrap.yml:
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
spring:
application:
name: turbine-service
server:
port: 8095
And here is my source:
package com.ml.turbine;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.netflix.turbine.EnableTurbine;
@SpringBootApplication
@EnableTurbine
@EnableEurekaClient
public class TurbineService {
public static void main(String[] args) {
SpringApplication.run(TurbineService.class, args);
}
}
When I hit my turbine stream in browser, the log reads:
2015-09-08 14:03:19.967 INFO 12024 --- [nio-8095-exec-4] c.n.t.s.servlet.TurbineStreamServlet : FilterCriteria: []
2015-09-08 14:03:19.967 INFO 12024 --- [nio-8095-exec-4] c.n.t.s.servlet.TurbineStreamServlet : StatsType filters: []
2015-09-08 14:03:19.967 INFO 12024 --- [nio-8095-exec-4] c.n.t.s.TurbineStreamingConnection : Relevance config: []
2015-09-08 14:03:19.967 INFO 12024 --- [nio-8095-exec-4] c.n.t.s.TurbineStreamingConnection : Relevance metrics config: {}
2015-09-08 14:03:19.967 INFO 12024 --- [nio-8095-exec-4] c.n.t.monitor.cluster.ClusterMonitor : Registering event handler for cluster monitor: StreamingHandler_92386c8c-b263-4548-be07-10c1a2a3dc27
2015-09-08 14:03:19.967 INFO 12024 --- [nio-8095-exec-4] c.n.t.handler.TurbineDataDispatcher :
Just added and starting handler tuple: StreamingHandler_92386c8c-b263-4548-be07-10c1a2a3dc27
2015-09-08 14:03:19.968 INFO 12024 --- [nio-8095-exec-4] c.n.turbine.data.AggDataFromCluster : Per handler dispacher started for: StreamingHandler_92386c8c-b263-4548-be07-10c1a2a3dc27
2015-09-08 14:03:19.973 INFO 12024 --- [nio-8095-exec-4] c.n.t.monitor.cluster.ClusterMonitor : All event handlers for cluster monitor: [StreamingHandler_92386c8c-b263-4548-be07-10c1a2a3dc27, StreamingHandler_deaba37e-b712-49db-beba-ab9f60848118, StaticListener_For_Aggregator, StreamingHandler_42896dd8-5d90-43c2-89ad-f57151b94894]
2015-09-08 14:03:19.974 INFO 12024 --- [nio-8095-exec-4] c.n.t.monitor.cluster.ClusterMonitor : Starting up the cluster monitor for DEV_agg
Why am I getting nothing in my turbine stream when it is connected to the policy-service and the hystrix stream works as it should?