Client libraries to help you instrument your code.
Daniel Hilst wrote a client in C, supporting both events and queries.
Gergely Nagy wrote another client in C, supporting both events and queries, but with a different API and goals.
Blue Mountain Capital has written a C# client.
Riemann-clojure-client is a small wrapper around the Java client.
elixir-riemann is an Elixir TCP client.
riemannx is an Elixir client with support for UDP/TCP/TLS and index querying.
Aircloak has also written erlang_riemann.
Daniel Kempkens maintains Katja, another Erlang client.
The Riemann Go Client is a client supporting TCP, UDP, TLS, and querying the index.
Amir Mohammad Saied wrote Raidman, a client for Go.
mgodave's riemann-client is based on Netty and Java Futures.
Gergely Nagy wrote riemoon, a simple Lua client based on his riemann-c-client library.
Dave Parfitt is working on riemann-ocaml-client.
Miquel Ruiz has written a Perl client, available on CPAN.
If you're using Twisted, EagleEye offers a UDP transport with support for long and float metrics.
There's also borntyping's riemann-client, which supports UDP, TCP and TLS, as well as queuing events for delivery.
Banjiewen's Python client. You can install it with
The Riemann Ruby client is a threadsafe, auto-retrying client supporting both TCP and UDP. It also provides utility classes to help manage service state.
Digital Science's riemann-metrics gem forwards Rails ActiveSupport notifications to Riemann.
Rached Ben Mustapha is building a Scala client, providing strong typing, an asynchronous API (using Akka under the hood) and a DSL.
Tools, programs, and plugins to monitor existing systems.
Riemann-tools is a Ruby gem with little daemons to monitor key systems like host health, Riak, and more. You can require it as a library to build your own pollers, in just a few lines of code.
Blue Mountain Capital has written a Java tool to monitor Cassandra with Riemann.
A Chef Reporting Handler sends information about your chef run to Riemann.
The Write Riemann plugin for collectd submits collectd values as events to Riemann.
Crabby is a web page performance monitor that loads your pages in a real browser (headless Chrome) and reports various page performance metrics (DNS resolution time, time-to-first-byte, DOM rendering time, etc.) to Riemann. It also reports HTTP response codes as state events.
Ganglia can forward events to Riemann.
Riemann-hbase forwards some JMX metrics from an HBase server to Riemann.
himpy is a multithreaded SNMP poller, with very low system overhead. It publishes the output of its SNMP polls to a riemann host. A great fit when you need some data from these pesky SNMP-only proprietary network devices.
The Riemann JVM Profiler lets you profile hundreds of JVMs in soft-real time.
Kiries is a pre-packaged integration of Kibana, Riemann, and ElasticSearch, together with management tools.
Logstash's Riemann output plugin sends log events to Riemann.
Krux's monitorlib is a Python library for creating monitoring scripts and plugins. It supports sending events to Riemann.
Riemann-mysql monitors a mysql server's replication status.
riemannq lets you query Riemann on the command line, and spits out JSON responses.
Riepeteproxies statsd metrics to Riemann.
This Python script runs a shell command and sends specially formatted events to Riemann.
This syslog-ng module sends log events to Riemann.
Tensor is a daemon for writing pluggable pollers that forward their results to Riemann. It's written in Python.
Additional functionality within riemann provided by external libraries
Provides the ability to acknowledge hosts & services temporarily, suppressing alert sending. Acnowledgements are handled through a simple web interface. https://github.com/exoscale/riemann-acknowledgement
A collection of plugins for often-met use cases:
A plugin for verifying that a condition on an event is true during a time period. https://github.com/mcorbin/riemann-cond-dt-plugin
Round robin timeseries middleware based on riemann and elasticsearch https://github.com/ccin2p3/samplerr