bridges.tpo/polyanthum application-level monitoring
I would like to use StatsD/Graphite to collect metrics for bridgestrap and rdsys. @anarcat asked on IRC if Prometheus would be a suitable alternative. I'm not sure, but I'll start with what I like about StatsD/Graphite:
- I like StatsD because it accepts metrics over UDP and is therefore decoupled from the application that generates metrics. Adding a new metric to the code is as simple as adding:
metrics.Inc("rdsys.foo.bar", 1)
- I like Graphite because it enables powerful comparison and composition of time series. For example, I can take the time series "# of functional bridges" and "# of dysfunctional" bridges, plot them against each other, etc.
- There is a Docker image that contains StatsD/Graphite and allows for easy setup.
I still have a poor understanding of what Prometheus can do. Is the above something that Prometheus/Grafana can do? If so, how would we send metrics to Prometheus? Note that I prefer a push-based model because it reduces the complexity of our code.
What are your thoughts on the above?
Edited by anarcat