Mgmt comes with a built-in prometheus support. It is disabled by default, and
can be enabled with the
--prometheus command line switch.
By default, the prometheus instance will listen on
can change this setting by using the
--prometheus-listen cli option:
To have mgmt prometheus bind interface on 0.0.0.0:45001, use:
./mgmt r --prometheus --prometheus-listen :45001
Mgmt exposes three kinds of resources: go metrics, etcd metrics and mgmt metrics.
We use the prometheus go_collector to expose go metrics. Those metrics are mainly useful for debugging and perf testing.
mgmt exposes etcd metrics. Read more in the upstream documentation
Here is a list of the metrics we provide:
mgmt_resources_total: The number of resources that mgmt is managing
mgmt_checkapply_total: The number of CheckApply's that mgmt has run
mgmt_failures_total: The number of resources that have failed
mgmt_failures: The number of resources that have failed
mgmt_graph_start_time_seconds: Start time of the current graph since unix epoch in seconds
For each metric, you will get some extra labels:
kind: The kind of mgmt resource
mgmt_checkapply_total, those extra labels are set:
eventful: "true" or "false", if the CheckApply triggered some changes
errorful: "true" or "false", if the CheckApply reported an error
apply: "true" or "false", if the CheckApply ran in apply or noop mode
You can use prometheus to alert you upon changes or failures. We do not provide such templates yet, but we plan to provide some examples in this repository. Patches welcome!
We do not have grafana dashboards yet. Patches welcome!