如何覆盖hystrix度量标准流端点的url后缀?

时间:2016-03-30 11:17:08

标签: spring-boot dropwizard metrics microservices

在我们的设置中,我们有许多dropwizard服务,它们将指标传输到hystrix仪表板。

我们正在Spring Boot中编写一个新服务,并希望度量标准流与dropwizard在同一个URL上,但我无法找到如何覆盖流servlet的url模式。

我确定这是可配置的,任何想法?

1 个答案:

答案 0 :(得分:4)

必须注册一个自定义bean来覆盖应用程序类中的硬编码值:

@Bean
public CustomHystrixStreamEndpoint customHystrixStreamEndpoint() {
    return new CustomHystrixStreamEndpoint();
}

并创建自定义包装类,如下所示:

    public class CustomHystrixStreamEndpoint extends ServletWrappingEndpoint {

        public CustomHystrixStreamEndpoint() {
            super(HystrixMetricsStreamServlet.class, "customHystrixStream",
                  "/tenacity/hystrix.stream",
                  false, true);
        }
    }

然后在配置文件中关闭默认值:

hystrix.stream.endpoint.enabled: false

仅供参考,默认包装类名为HystrixStreamEndpoint