Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.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/2/spring/13.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 如何使用spring boot显示Dropwizard Metrics Servlet?_Java_Spring_Spring Boot_Metrics_Dropwizard - Fatal编程技术网

Java 如何使用spring boot显示Dropwizard Metrics Servlet?

Java 如何使用spring boot显示Dropwizard Metrics Servlet?,java,spring,spring-boot,metrics,dropwizard,Java,Spring,Spring Boot,Metrics,Dropwizard,我使用springbootstarteractor获取localhost/metrics端点 现在我还想使用dropwizard.metrics和metrics servlet依赖项。在他们的网页()上,有一个AdminServet和一些度量、堆、线程转储和ping的管理菜单 但我没有看到那个servlet。我可能必须在spring boot中显式注册它吗?我必须实例化servlet显式,并提供一个servlet映射路径,如下所示: @Bean public ServletRegistratio

我使用
springbootstarteractor
获取
localhost/metrics
端点

现在我还想使用
dropwizard.metrics
metrics servlet
依赖项。在他们的网页()上,有一个
AdminServet
和一些度量、堆、线程转储和ping的管理菜单


但我没有看到那个servlet。我可能必须在spring boot中显式注册它吗?

我必须实例化servlet显式,并提供一个servlet映射路径,如下所示:

@Bean
public ServletRegistrationBean servletRegistrationBean(){
    return new ServletRegistrationBean(new AdminServlet(),"/metrics/admin/*");
}

如果有人正在使用版本5.0.0,则需要执行以下步骤才能使其正常工作:

@Inject
private ServletContext servletContext;

@Inject
private MetricRegistry metricRegistry;

@Inject
private HealthCheckRegistry healthCheckRegistry;

@Bean
public ServletRegistrationBean<Servlet> servletRegistrationBean(){
    servletContext.setAttribute(MetricsServlet.METRICS_REGISTRY,
        metricRegistry);
    servletContext.setAttribute(HealthCheckServlet.HEALTH_CHECK_REGISTRY,
        healthCheckRegistry);

    return new ServletRegistrationBean<>(new AdminServlet(), "/metrics/*");
}
@Inject
私有ServletContext ServletContext;
@注入
私人度量衡局度量衡局;
@注入
私有HealthCheckRegistry HealthCheckRegistry;
@豆子
公共ServletRegistrationBean ServletRegistrationBean(){
servletContext.setAttribute(MetricsServlet.METRICS_注册表,
计量学);
servletContext.setAttribute(HealthCheckServlet.HEALTH\u CHECK\u注册表,
healthCheckRegistry);
返回新的ServletRegistrationBean(新的AdminServlet(),“/metrics/*”);
}

来源:

我看到了菜单,但我无法从该链接中看到矩阵为空。然而,直接访问/metrics会给出数据结果。你是怎么把这两个人联系起来的?