Skip to content

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
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information