
Effortless monitoring with collectd, Graphite and Docker - kalessin
http://blog.docker.io/2013/07/effortless-monitoring-with-collectd-graphite-and-docker/
======
gingerlime
UDP is really great, but it also makes it extremely easy to spoof the source
IP and flood your monitoring server with fake metrics. It's probably not a
huge concern, but something to be aware of. See a blog post I wrote in the
context of statsd/carbon[1]

<shameless plug> Also, if you're looking for a nice open-source front-end to
graphite, take a look at Giraffe[2]. It also has a collectd plugin[3]
</shameless plug>

[1][http://blog.gingerlime.com/2012/statsd-and-carbon-
security/](http://blog.gingerlime.com/2012/statsd-and-carbon-security/)
[2][http://giraffe.kenhub.com/](http://giraffe.kenhub.com/)
[3][https://github.com/bflad/giraffe-
collectd](https://github.com/bflad/giraffe-collectd)

~~~
kalessin
Yeah, that's why collectd supports authentication and encryption
([https://www.collectd.org/documentation/manpages/collectd.con...](https://www.collectd.org/documentation/manpages/collectd.conf.5.shtml#plugin_network)).
I can't really speak about Graphtie since I'm less used to it; but in this
case you can decide to not expose the Graphite port and only expose the
collectd port.

~~~
gingerlime
Ah. I wasn't aware of this. Graphite/Carbon/Statsd are much more "basic" in
that respect.

------
hcarvalhoalves
The biggest problem is setting up and upgrading Graphite, which is a pain and
semi-broken right now.

I've been successful using collectd + Librato, works great, specially since
you can setup alerts effortlessly.

~~~
gingerlime
Yes, setting up graphite can be confusing and painful. Looks like the author
created a Docker app that should also make it easier.

Another alternative and a shamless plug - I've created an open-source fabric
script that automates the graphite install processes (on debian-based hosts).
See [https://github.com/gingerlime/graphite-
fabric](https://github.com/gingerlime/graphite-fabric)

~~~
lsh123
Yep, I think it has too many dependencies and the architecture is over
complicated. I've built a standalone stats collection/storage daemon that just
works with any charts packaging - google charts, or whatever. Works great and
doesn't require 10000 dependencies.

[https://github.com/lsh123/stats-rrdb](https://github.com/lsh123/stats-rrdb)

------
mdellabitta
I don't understand this idea that you should build a metrics system from
components rather than use one of the end-to-end projects out there like
Zabbix. Can someone clue me in?

~~~
otterley
I don't, either. And Graphite doesn't allow you to tag metrics for easy
aggregation, which is a huge win if you're monitoring more than a few
instances of a metric. (Nor does Zabbix, BTW.)

I'm a reasonably happy Datadog customer.

~~~
jacobscott
Have you used any other cloud monitoring/metric/etc providers? If so, how do
they compare to DataDog?

~~~
otterley
To my knowledge, none of them supports multi-dimensional metrics. So I had to
cross them off my list.

------
sciurus
To extend on this idea a little bit, once you have the data in graphite you
can use it as input to an alerting system. As an example, here's a Nagios
plugin I wrote to do that-
[https://github.com/sciurus/grallect](https://github.com/sciurus/grallect)

------
plasma
I'd love to see a "fixed" version of statsd/graphite/etc that is painless to
install, understand and use.

