4 ms·
There is Prometheus [1]. It has bindings for pretty much all languages and integrates nicely with Grafana [2], which is used to plot Prometheus queries onto nic
by gas9S9zw3P9c 6y ago
There is Prometheus [1]. It has bindings for pretty much all languages and integrates nicely with Grafana [2], which is used to plot Prometheus queries onto nice-looking dashboards. I have been using Prometheus for many projects and couldn't be happier with it. It's incredibly small, fast, reliable, and memory-efficient. On one of my clusters, it has been 2 years without any prometheus downtime.
Most commonly used infra services, e.g. databases like postgres, Minio, Kafka, Docker, or k8s, ship with Prometheus metrics out of the box, so you don't need to setup anything to monitor these. Just enable the metrics endpoint. It also integrates with long-term storage (like timescaledb) for more advanced queries on historical data.
Alternatively, there is InfluxDB. I haven't used it, so I can't speak to the differences. These seem to be the two big ones, I'm sure there is a whole range of smaller "startup-ish" competitors/projects as well. Splunk or other log analysis systems are another option I see commonly used. They are not a metrics store, but many companies seem to "abuse" their logs extract metrics. IMO not a good idea.
[1] https://prometheus.io/ https://prometheus.io/
[2] https://grafana.com/ https://grafana.com/