13

Is there any alternative to etsy's statsd? Maybe even a complete dashboard-like solution? My research only found proprietary SaaS solutions.

For those who do not know: statsd is a deamon which collects app and system metrics via UDP and sends them to Graphite to generate more or less beautiful plots. There is an API for all important languages available.

I need:

  • must run on my servers without a third party collecting the data
  • should be able to collect data both from the system, Java and Perl
  • should be lightweight and flexible
  • FOSS
  • may require additional programming, may be only a framework
d135-1r43
  • 411
  • 4
  • 13
  • What is you don't like about statsd? It pretty much addresses your needs you listed. – Chida Aug 14 '12 at 06:29
  • It does not have a dynamic, easy to use GUI. Graphite is a rendering tool, not a dashboard like solution. – d135-1r43 Aug 14 '12 at 09:04
  • 1
    You may want to give graphite a try if you haven't already. Most of the "3rd party" use it. https://metrics.librato.com/ and Newrelic does. What is dynamic and dashboard to you? I know graphite can do both. – Chida Aug 14 '12 at 09:11
  • 2
    Maybe you misunderstand what `statsd` really does. It does not have a dynamic, easy to use GUI because it's not what it does. `statsd` is just a very simple statistics aggregator. – pkhamre Aug 14 '12 at 11:57
  • _statsd is just a very simple statistics aggregator_ and what I need is a GUI. That is why I have asked this question ;) TL;DR: statsd is great, but what I want is stats _and_ a GUI/dashboard – d135-1r43 Aug 14 '12 at 12:53

3 Answers3

6

Check out the following two projects:

batsd is a daemon for aggregating and storing statistics, while batsd-dash is a configurable dashboard the present the data you have stored in batsd.

About batsd

Batsd is a ruby-based daemon for aggregating and storing statistics. It targets "wireline" compatibility with Etsy's StatsD implementation, which they described in a blog post.

Batsd differs from etsy's statsd implementation primarily in how it stores data -- data is stored to a combination of Redis and flat files on disk. You can read more about persistence in About: Persistence.

Batsd grew out of usage at 37signals, where it has been used for the last year. An earlier form was inspired by quasor.

pkhamre
  • 5,900
  • 3
  • 15
  • 27
1

This seems perilously close to a shopping question, which aren't permitted on SF (see the FAQ). I also don't know statsd, but from the list of capabilities I can say that munin fulfils them all. Rrdtool is used as the data aggregation and graphing engine. Since it's plugin-based, it can collect and process any statistic that you can locally source on the server with an atomic operation.

MadHatter
  • 78,442
  • 20
  • 178
  • 229
  • Thanks for the hint! I'd say it is more or less a "how can I do something" than a "what is the best product" question. I primarily need to solve the problem, that I do not want to send my server statistics to a third party in order to get state of the art statistics. – d135-1r43 Aug 10 '12 at 08:35
  • 1
    I think I'd agree, and I note your question's not yet attracting any close votes. I hope it stays that way. – MadHatter Aug 10 '12 at 12:52
1

I do not think you should try to replace statsd since it is almost a standard for most metric tools. The big problem when building your metrics system tends to be the default backend: graphite. It is a pain to install unless you are familiar with Django apps.

With batsd and its dashboard you can get started rather quick, specially if you know Ruby. However the dashboard is quite limited.

My choice was using influxdb as backend for statsd and rendering graphs with Grafana. Initially I was tempted to send my metrics directly to influxdb, but could not deny the variety of clients in multiple languages for Statsd. That and you will need it also to aggregate data with time.

SystematicFrank
  • 113
  • 1
  • 7