无法在 Hystrix 仪表板上查看 Hystrix 报告
Posted
技术标签:
【中文标题】无法在 Hystrix 仪表板上查看 Hystrix 报告【英文标题】:Not able to view Hystrix Report on Hystrix Dashboard 【发布时间】:2017-01-30 11:45:50 【问题描述】:我有一个内部调用soap web 服务的rest 应用程序(基于cxf)。我想将 hystrix 集成到我的休息应用程序中。
1) 使用我们现有的服务数据修改了下面的 hystrix 演示源代码并部署了其余应用程序。
https://github.com/Netflix/Hystrix/tree/master/hystrix-examples/src/main/java/com/netflix/hystrix/examples/demo
2) 我下载了 hystrix-dashboard war 文件并部署到 tomcat 中,我可以看到 hystrix 仪表板主页。
现在,当我尝试通过提供 hystrix 集成的 rest 应用程序 url 来监视流时。显示带有 hystrix 图标的空页面。当我查看 IE 开发者控制台时,它显示以下错误
EventSource 未定义。
//code snippet from ie developer console
var proxyStream = "../proxy.stream?origin=http://localhost:8080/hystrix/hystrix.stream;
// start the EventSource which will open a streaming connection to the server
var source = new EventSource(proxyStream);
注意:两者都部署在同一台机器上 - localhost
【问题讨论】:
你能用其他浏览器如 Firefox 或 chrome 试试吗? 【参考方案1】:您必须添加以下代码:
@Bean
public ServletRegistrationBean servletRegistration()
ServletRegistrationBean registration = new ServletRegistrationBean(new HystrixMetricsStreamServlet(), "/hystrix.stream");
return registration;
您还要确保/hystrix.stream
不受保护。
【讨论】:
以上是关于无法在 Hystrix 仪表板上查看 Hystrix 报告的主要内容,如果未能解决你的问题,请参考以下文章
无法在 Spring Boot 应用程序中设置 hystrix 仪表板