0
나는 Hystrix에 대해 완전히 새롭지 만, 그로부터 메트릭스를 모니터 할 필요가있다.Hystrix Dashboard
지금까지 Hystrix 대시 보드를 표시/실행하는 독립 실행 형이 있습니다.
내 프로젝트에서 종속성을 추가합니다. 8080/건강과 답변을 얻을 :
compile(group:"com.netflix.hystrix", name:"hystrix-metrics-event-stream", version:'1.5.5')
compile(group:"org.springframework.cloud", name:"spring-cloud-starter-hystrix-dashboard", version:'1.1.5.RELEASE')
compile(group:"org.springframework.boot", name:"spring-boot-starter-actuator", version:'1.4.0.RELEASE')
compile(group:"org.springframework.cloud", name:"spring-cloud-starter-hystrix", version:'1.1.5.RELEASE')
또한 내 SpringConfig에서 나는 성공적으로는 로컬 호스트에서 실행중인 경우 내가 확인할 수있는 서비스를 부팅
@EnableHystrix
public class MyAppConfig {
@Bean
public ServletRegistrationBean servletRegistration() {
ServletRegistrationBean registration = new ServletRegistrationBean(new HystrixMetricsStreamServlet(), "/hystrix.stream");
return registration;
}
}
를 추가합니다.
localhost : 8080/hystrix.stream을 추가하고 Hystrix 대시 보드의 Monitor Streams 버튼에 "Loading ..."라고 잠시 동안 말했지만 "Command Metric Stream에 연결할 수 없습니다."라는 메시지가 나타납니다.
또한 대시 보드 콘솔에서 이걸 가져 왔습니다.
17:19:26.858 [vert.x-eventloop-thread-0] INFO c.g.k.h.c.s.d.HystrixDashboardProxyConnectionHandler - Proxing request to http://localhost:8080/hystrix.stream
17:19:31.879 [vert.x-eventloop-thread-0] ERROR c.g.k.h.c.s.d.HystrixDashboardProxyConnectionHandler - Proxying request
java.util.concurrent.TimeoutException: The timeout period of 5000ms has been exceeded
at io.vertx.core.http.impl.HttpClientRequestBase.timeout(HttpClientRequestBase.java:155)
at io.vertx.core.http.impl.HttpClientRequestBase.handleTimeout(HttpClientRequestBase.java:140)
at io.vertx.core.http.impl.HttpClientRequestBase.lambda$setTimeout$0(HttpClientRequestBase.java:100)
at io.vertx.core.impl.VertxImpl$InternalTimerHandler.handle(VertxImpl.java:782)
at io.vertx.core.impl.VertxImpl$InternalTimerHandler.handle(VertxImpl.java:753)
at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:316)
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:418)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:440)
at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:873)
at java.lang.Thread.run(Thread.java:745)
17:19:31.894 [vert.x-eventloop-thread-0] ERROR c.g.k.h.c.s.d.HystrixDashboardProxyConnectionHandler - Proxying request
io.vertx.core.VertxException: Connection was closed
at io.vertx.core.http.impl.ClientConnection.handleClosed(ClientConnection.java:396)
at io.vertx.core.impl.ContextImpl.lambda$wrapTask$2(ContextImpl.java:314)
at io.vertx.core.impl.ContextImpl.executeFromIO(ContextImpl.java:190)
at io.vertx.core.net.impl.VertxHandler.channelInactive(VertxHandler.java:97)
마지막으로 curl localhost를 만들려고합니다 : 8080/hystrix.stream이 전혀 응답하지 않습니다.
누군가가 내게 힌트를 줄 수있는 것이 있는지 놓치고 있는지 확실하지 않습니다.
감사합니다.
메인 클래스에 있어야하나요? 또는 config 클래스에 있어야합니까? 그런데 대시 보드에 독립형 앱이있어서 클라이언트 애플리케이션에 특수 효과가 있어야합니다. 또는 대시 보드 앱에 있습니까? – Dr3ko
내 나쁜 :) 주석은 주 수업에 @EnableHystrix이고 springboot를 사용하는 경우 spring-actutator도 있어야합니다. 주석은 클라이언트 응용 프로그램에 있어야한다고 생각합니다. 심지어 hystrix에 익숙하지 않습니다. – mike
Nope가 작동하지 않고, 주석이 추가되었습니다. SpringBootApplication, EnableCircuitBreaker, EnableHystrixDashboard, EnableHystrix 그리고 작동하지 않습니다. – Dr3ko