坚持Coda Hale Metric信息

нαƒ*_*єєz 5 java mysql spring codahale-metrics

我是Coda Hale Metrics的新手.我创建了一个示例spring应用程序,它具有一个简单的RESTful Web服务方法.

我使用了Coda Hale Metrics框架提供的Meter,Timer和Counter工具来跟踪请求数量,请求比率和请求持续时间.目前,我使用Console Reporter of Metrics将这些信息输出到控制台(请参阅下面的代码).

@Override
    public void configureReporters(MetricRegistry metricRegistry) {

        registerReporter(ConsoleReporter.forRegistry(metricRegistry).build())
                .start(30, TimeUnit.SECONDS);
    }
Run Code Online (Sandbox Code Playgroud)

关于Coda Hale Metrics我几乎没有问题.

(1)目前柜台显示总数没有.服务器启动后发出的请求 有没有办法得到否.在特定报告期内提出的请求(例如: - 计数第1个30秒=计数1,计数第2个30秒=计数2,等等...)

(2)是否可以使用Timer获取每个请求的持续时间?目前,计时器显示所有请求的最小,最大和平均速率.

(3)是否有可能将这些度量数据保存到外部数据库中(例如: - MySQL)?

下面是我的REST服务方法.

@RequestMapping(value = "/examplerest", method = RequestMethod.GET)
    @ResponseBody
    @Metered(name="exampleRestMetered")
    @Timed(name="exampleRestTimed")
    @Counted(name="exampleRestCounted", monotonic=true)
    public String exampleRest(
            HttpServletResponse response) {

/**
some logics here
*/
}
Run Code Online (Sandbox Code Playgroud)

感谢您对此的指导.

谢谢.

geo*_*and 0

指标库的当前名称是Dropwizard Metrics(只是提及它,因为您可能使用的是旧版本)。

至于3)如果我是你,我会查看这个向 Cassandra 报告的项目和这个向 Elasticsearch 报告的项目。您可以在此处找到上述第三方模块的列表。

我不知道有任何项目将数据报告到关系数据库。

向 Elasticsearch 报告可能非常有吸引力,因为您可以设置Kibana来立即可视化您的数据(可能以 Graphite/Grafana 中很难的方式)