5

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

我想在 riemann 中发送这些监视器这些指标,但我不知道如何开始。我浏览了 riemann-java-client,它有一个用于 yammer 指标的 RiemannReporter 类,但我不知道如何在我的应用程序中使用它。

如何将此客户端集成到我的应用程序中,或者如何从 url 捕获 json 并将它们作为事件发送到 riemann 服务器?

4

1 回答 1

6

Java 客户端库中的 RiemanReporter Builder将 dropwizard 度量注册表带入构造函数。它支持标记事件并将速率转换为黎曼事件。您可以使用 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);

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

(streams (where (tag "YOUR_APPLICATION_TAG") #(info %)))
于 2015-04-17T11:51:10.900 回答