How do StatsD and CollectD relate?
- Is StatsD and alternative to CollectD
- Is StatsD used to aggregate metrics coming from CollectD (and possibly other tools)
- something else entirely. If so what?
They are different things.
CollectD is statistics collection daemon. It periodically polls various sources (the plugin collection is quite exhaustive) for metrics. It can receive metrics as well. CollectD is well versed in collecting metrics from the system, various popular services (web servers, database servers, etc), as well as custom application metrics (this requires applications to generate those metrics). CollectD can do more things as well, but this is probably beyond scope of this question.
StatsD is event counter/aggregation service. It receives per-event timings and calculates and generates aggregated values. It is built to count/aggregate custom applications metrics. It only requires the application to send events, without any need for aggregations.
CollectD supports StatsD as an input since version 5.4, so there is no need to run separate daemon: https://collectd.org/wiki/index.php/Plugin:StatsD