vitess-gh/vitess-mixin
..
alerts
dashboards
e2e
lib
rules
scripts
.env
.gitignore
Makefile
README.md
config.libsonnet
go.mod
go.sum
jsonnetfile.json
mixin.libsonnet
tools.go
vitess-mixin-quickstart.md

README.md

(Beta) Monitoring Mixin for Vitess

A set of Grafana dashboards, Prometheus rules and alerts for Vitess, packaged together in a reusable and extensible bundle.

🔁 Prerequisites

  1. Go (programming language)

    • Install binaries using the official installer

    • Ensure GOPATH variable is set in your system. See instructions here. Here below there's a sample config:

      export GOPATH=$HOME/go
      export PATH="$GOPATH/bin:/usr/local/go/bin:$PATH"
      
  2. Install the go tools: make tools, jb, jsonnet, jsonnetfmt, and promtool should now be in $GOPATH/bin.

  3. Install the dependencies by running: jb install

How-to

Customize config.libsonnet based on your setup. Example: specify the dataSource name (default to Prometheus_Vitess). You can then generate:

  • Prometheus alerts: $ make prometheus_alerts.yaml (Note: This files is empty because the current version of the mixin uses Grafana Alerts)

  • Prometheus rules: $ make prometheus_rules.yaml

  • Grafana dashboard: $ ENV='prod' make dashboards_out (Supported environments are dev and prod).

The prometheus_alerts.yaml and prometheus_rules.yaml file then need to passed to your Prometheus server, and the files in dashboards_out need to be imported into you Grafana server.

👩‍💻 Development

If you want to contribute please read Vitess mixin quickstart guide