Riemann aggregates events from your servers and applications with a powerful stream processing language. Send an email for every exception in your app. Track the latency distribution of your web app. See the top processes on any host, by memory and CPU. Combine statistics from every Riak node in your cluster and forward to Graphite. Track user activity from second to second. Riemann streams are just functions which accept an event. Events are just structs with some common fields like :host and :service You can use dozens of built-in streams for filtering, altering, and combining events, or write your own. Since Riemann's configuration is a Clojure program, its syntax is concise, regular, and extendable. Configuration-as-code minimizes boilerplate and gives you the flexibility to adapt to complex situations.
Features
- Instantly identify hotspots, down services, and unbalanced loads
- Riemann can tell you as much or as little as you want
- Throttle or roll up multiple events into a single messages
- Get emails about exceptions in your code, provider downtime, or latency spikes
- You can also integrate with PagerDuty for SMS or phone alerts
- Search the Riemann index with a small query language