【发布时间】:2017-05-26 09:07:03
【问题描述】:
我正在使用Dropwizard Metrics 库来记录我的应用程序中各种操作的时间,使用Timer 和ConsoleReporter 并将count、mean rate 等记录到控制台。
我希望这些数字也可以在 /metrics servlet 上使用,并且基于 http://metrics.dropwizard.io/3.1.0/manual/servlets/ 我需要访问名为 com.codahale.metrics.servlets.MetricsServlet.registry 的 MetricRegistry。但是查看文档和代码,我看不出这是如何完成的。我现有的 /metrics 仅输出 dropwizard 和 jetty 类的计时器
[编辑]
private static final MetricRegistry metricRegistry = new MetricRegistry();
...
Timer timer = metricRegistry.timer(name("com.codahale.metrics.servlets.MetricsServlet.registry","testval"));
如何将我的计时器连接到 /metrics 的输出?
【问题讨论】:
-
默认情况下,servlet 会列出 DW 指标注册表中的所有指标。您是否在正确的注册表中注册了您的指标?
-
谢谢@pandaadb 我已经添加了获取注册表和计时器的代码。它对我来说看起来不正确,但看不到你是如何用 MetricsServlet 专门注册它的
-
这是你的问题,马特。您使用的指标注册表不是 DW 提供的。在您的启动代码中,您有一个已提供指标注册表的环境。 DW 使用这个来显示该 servlet 上的指标
-
非常感谢。不知道我是如何错过环境提供的。如果你想把它作为答案,我可以接受它
标签: java dropwizard codahale-metrics