Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/148.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hystrix仪表板不工作_Java_Spring Boot_Hystrix - Fatal编程技术网

Java Hystrix仪表板不工作

Java Hystrix仪表板不工作,java,spring-boot,hystrix,Java,Spring Boot,Hystrix,我正在springboot应用程序中使用REST服务。我正在研究Hystrix,以实现度量。因此,我在版本7的tomcat服务器中部署了hystrix dashboard war。我能打开这一页。在我添加流url并单击Monitor streams按钮后,它会将我带到Monitor页面,在那里我所能看到的是消息“无法连接到command metrix stream”。当我查看hystrix控制台时,我反复看到下面的消息。请帮帮我 2016-10-04 07:23:28 INFO com.net

我正在springboot应用程序中使用REST服务。我正在研究Hystrix,以实现度量。因此,我在版本7的tomcat服务器中部署了hystrix dashboard war。我能打开这一页。在我添加流url并单击Monitor streams按钮后,它会将我带到Monitor页面,在那里我所能看到的是消息“无法连接到command metrix stream”。当我查看hystrix控制台时,我反复看到下面的消息。请帮帮我

2016-10-04 07:23:28 INFO  com.netflix.turbine.discovery.InstanceObservable$1:289 [InstanceObservable$1] [run]: Hosts up:1, hosts down: 0
2016-10-04 07:23:28 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:460 [InstanceMonitor] [getNextStatsData]: no more data from c
onnection to 138.12.51.246
2016-10-04 07:23:28 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:477 [InstanceMonitor] [retryHostConnection]: Re-initing host
connection: 138.12.51.246 default
2016-10-04 07:23:30 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:460 [InstanceMonitor] [getNextStatsData]: no more data from c
onnection to 138.12.51.246
2016-10-04 07:23:30 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:477 [InstanceMonitor] [retryHostConnection]: Re-initing host
connection: 138.12.51.246 default
2016-10-04 07:23:31 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:460 [InstanceMonitor] [getNextStatsData]: no more data from c
onnection to 138.12.51.246
2016-10-04 07:23:31 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:477 [InstanceMonitor] [retryHostConnection]: Re-initing host
connection: 138.12.51.246 default
2016-10-04 07:23:32 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:460 [InstanceMonitor] [getNextStatsData]: no more data from c
onnection to 138.12.51.246
2016-10-04 07:23:32 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:477 [InstanceMonitor] [retryHostConnection]: Re-initing host
connection: 138.12.51.246 default
2016-10-04 07:23:33 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:460 [InstanceMonitor] [getNextStatsData]: no more data from c
onnection to 138.12.51.246
2016-10-04 07:23:33 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:477 [InstanceMonitor] [retryHostConnection]: Re-initing host
connection: 138.12.51.246 default
2016-10-04 07:23:35 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:460 [InstanceMonitor] [getNextStatsData]: no more data from c
onnection to 138.12.51.246
2016-10-04 07:23:35 INFO  com.netflix.turbine.monitor.instance.InstanceMonitor:477 [InstanceMonitor] [retryHostConnection]: Re-initing host
connection: 138.12.51.246 default
2016-10-04 07:23:36 INFO 

找到了答案。。我们需要在响应头中添加MIME类型作为文本/事件流。我在这里编写的修复程序专门针对Springboot与Hystrix dashboard的集成。你需要做的就是

1) 在pom.xml中添加度量事件流依赖项

<dependency>
    <groupId>com.netflix.hystrix</groupId>
    <artifactId>hystrix-metrics-event-stream</artifactId>
    <version>1.5.5</version>
</dependency>
(三) 返回响应头具有文本/事件流MIME类型的响应。 即使有另一种内容类型,如application/xml,也可以使用这种新的内容类型

HttpHeaders resHeaders = new HttpHeaders();
resHeaders.add("Content-Type", "application/xml; charset=utf-8");
resHeaders.add("Content-Type", "text/event-stream; charset=utf-8");
if(!isError){
return new ResponseEntity<String>(responseXml, resHeaders, HttpStatus.OK);
}
else{
return new ResponseEntity<com.test.pack.fault.Error>(error, resHeaders,HttpStatus.CREATED);
    }
HttpHeaders resHeaders=新的HttpHeaders();
添加(“内容类型”,“应用程序/xml;字符集=utf-8”);
添加(“内容类型”、“文本/事件流;字符集=utf-8”);
如果(!isError){
返回新的ResponseEntity(responseXml、resHeaders、HttpStatus.OK);
}
否则{
返回新的ResponseEntity(错误,resHeaders,HttpStatus.CREATED);
}
4) 在版本7或更高的Tomcat服务器中下载并部署Hystrix dashboard war文件,然后启动服务器

5) 用url打开仪表板

6) 在hystrix主页中,将应用程序url添加为any)/hystrix.stream。 然后单击添加流按钮,然后单击监视流按钮。
hystrix.stream是我们在servlet注册中提供的url映射。

您好,谢谢,它适合我。第3部分不清楚,但没有必要使用它。
HttpHeaders resHeaders = new HttpHeaders();
resHeaders.add("Content-Type", "application/xml; charset=utf-8");
resHeaders.add("Content-Type", "text/event-stream; charset=utf-8");
if(!isError){
return new ResponseEntity<String>(responseXml, resHeaders, HttpStatus.OK);
}
else{
return new ResponseEntity<com.test.pack.fault.Error>(error, resHeaders,HttpStatus.CREATED);
    }