postgres_exporter/postgres_mixin
Joe Adams 5d10f23241 Rework postgres_mixin dashboard
Rework the postgres_mixing dashboard to be more composable. The goal is for this to be more maintainable long term. I don't know jsonnet very well, but following other projects, this appears to be in line.

This replaces the postgres-overview.json dashboard with an overview.json dashboard with the same panels. While the dashboard does not match perfectly, it does include the same data but with the correct metrics.

Signed-off-by: Joe Adams <github@joeadams.io>
2023-09-12 22:20:50 -04:00
..
alerts postgres_mixin/alerts: fix incorrect promql aggregation 2022-04-23 08:37:16 +02:00
dashboards Rework postgres_mixin dashboard 2023-09-12 22:20:50 -04:00
.gitignore feat(mixin): Add grafana mixins support for postgres exporter 2021-03-02 13:18:59 +01:00
config.libsonnet Rework postgres_mixin dashboard 2023-09-12 22:20:50 -04:00
dashboards.jsonnet Rework postgres_mixin dashboard 2023-09-12 22:20:50 -04:00
go.mod feat(mixin): Add grafana mixins support for postgres exporter 2021-03-02 13:18:59 +01:00
jsonnetfile.json Rework postgres_mixin dashboard 2023-09-12 22:20:50 -04:00
jsonnetfile.lock.json Rework postgres_mixin dashboard 2023-09-12 22:20:50 -04:00
Makefile feat(mixin): Add grafana mixins support for postgres exporter 2021-03-02 13:18:59 +01:00
mixin.libsonnet postgres_mixin: allow parametrization of mixin by using _config object 2022-04-10 16:23:24 +02:00
README.md feat(mixin): Add grafana mixins support for postgres exporter 2021-03-02 13:18:59 +01:00

Postgres Mixin

This is a work in progress. We aim for it to become a good role model for alerts and dashboards eventually, but it is not quite there yet.

The Postgres Mixin is a set of configurable, reusable, and extensible alerts and dashboards based on the metrics exported by the Postgres Exporter. The mixin creates recording and alerting rules for Prometheus and suitable dashboard descriptions for Grafana.

To use them, you need to have mixtool and jsonnetfmt installed. If you have a working Go development environment, it's easiest to run the following:

$ go get github.com/monitoring-mixins/mixtool/cmd/mixtool
$ go get github.com/google/go-jsonnet/cmd/jsonnetfmt

You can then build the Prometheus rules files alerts.yaml and rules.yaml and a directory dashboard_out with the JSON dashboard files for Grafana:

$ make build

For more advanced uses of mixins, see https://github.com/monitoring-mixins/docs.