Я пытаюсь добавить конечную точку /metrics
в веб-приложении Java, реализованном с помощью Dropwizard , чтобы ее можно было удалить с помощью Прометей .
Мой первыйподход состоял в том, чтобы использовать DropwizardExports
сборщик, предоставленный simpleclient_dropwizard , и зарегистрировать его следующим образом:
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Плагин .
Для этой цели представляется разумным получить доступ к показателям, предоставляемым Jetty, например, io_dropwizard_jetty_MutableServletContextHandler_requests_count
.Как я могу изменить их соответствующие имена на те, которые нужны в моем контексте?
Поэтому возникает первый вопрос: возможно ли даже каким-либо образом агрегировать и / или переименовывать метрики, предоставляемые DropWizard?
Еслинет, каков наилучший подход для реализации моих собственных метрик для Прометея?Реализовать пользовательский коллектор (возможно, наследующий от DropwizardExports
?
Мне вообще нужно DropwizardExports
в первую очередь?