This project encompasses:
- A Java client for the Riemann protocol
- The Riemann protocol buffer definition, and
- Its corresponding (autogenerated) Java classes
Artifacts are available through clojars which you can add to your maven repository like so:
<repository>
<id>clojars.org</id>
<url>http://clojars.org/repo</url>
</repository>
RiemannClient c = new RiemannTcpClient(new InetSocketAddress("my.riemann.server", 5555));
c.event().
service("fridge").
state("running").
metric(5.3).
tags("appliance", "cold").
send();
c.query("tagged \"cold\" and metric > 0"); // => List<Event>;
The TCP client is in its early stages; it does not handle server error responses correctly and offers no pooling or retries. The top-level API for sending events and querying the index is functional and threadsafe. A small DSL is available to make sending events easier.
- Set host automatically.
You'll need protoc 2.5.0. After that, mvn package
should build a JAR, and mvn install
will drop it in your local repository.