为Prometheus自定义Dropwizard指标

时间:2018-10-25 10:17:36

标签: java dropwizard prometheus codahale-metrics prometheus-java

我试图在用Dropwizard实现的Java Web应用程序中添加一个/metrics端点,以便可以被Prometheus抓取。

我的第一种方法是使用simpleclient_dropwizard提供的DropwizardExports收集器并像这样注册它:

    Collector dropwizardExports = new DropwizardExports(environment.metrics());
    CollectorRegistry.defaultRegistry.register(dropwizardExports);
    environment.admin()
            .addServlet("metrics", new MetricsServlet(CollectorRegistry.defaultRegistry))
            .addMapping("/metrics");

这很好用,但是我们特定的Prometheus配置需要一些特定的导出器,例如名为http_requests_total的计数器(顺便说一句,我知道这个名称的选择不是很好)。

更具体地说,我希望使用与Mojolicious Prometheus Plugin相同的指标。

为此,访问Jetty提供的指标似乎是合理的,例如io_dropwizard_jetty_MutableServletContextHandler_requests_count。如何将其各自的名称更改为上下文中需要的名称?

因此,第一个问题是:是否有可能以某种方式聚合和/或重命名DropWizard提供的指标?

如果没有,实现我自己的Prometheus指标的最佳方法是什么?实现自定义收集器(也许继承自DropwizardExports

我首先需要DropwizardExports吗?

0 个答案:

没有答案