如何将riemann整合到dropwizard中以捕获指标?

San*_*ram 5 yammer dropwizard riemann

我有一个dropwizard应用程序,它可以发出yammer指标,可以通过http:// localhost:8081/admin/metrics这样的URL进行监控,它以jsons的形式给出结果.

我想在riemann中发送这些监控这些指标,我不知道如何启动.我浏览了riemann-java-client,它有yiemer指标的RiemannReporter类,但我不知道如何在我的应用程序中使用它.

如何将此客户端集成到我的应用程序或如何从URL中捕获jsons并将这些事件作为事件发送到riemann服务器?

bar*_*mac 6

Java客户端库中的RiemanReporter Builder 将dropwizard metrics注册表放入构造函数中.它支持标记事件,并将速率转换为黎曼事件.您可以使用TimeUnit在start方法上设置轮询间隔

        Riemann riemann = new Riemann("YOUR_RIEMANN_HOST", 5555);
        ArrayList<String> tags = new ArrayList<String>();
        tags.add("YOUR_APPLICATION_TAG");
        RiemannReporter.Builder builder = RiemannReporter.forRegistry(environment.metrics()).tags(tags);
        RiemannReporter riemannReporter = builder.build(riemann);
        riemannReporter.start(1, TimeUnit.SECONDS);
Run Code Online (Sandbox Code Playgroud)

Riemann配置捕获此输出并写入Riemann日志:

(streams (where (tag "YOUR_APPLICATION_TAG") #(info %)))
Run Code Online (Sandbox Code Playgroud)