salt-run state.event pretty=Trueunder steroids
Salt Exporter comes with Salt Live. This is a Terminal UI tool to watch events in real time.
Salt Exporter is a Prometheus exporter for Saltstack events. It exposes relevant metrics regarding jobs and results.
This exporter is passive. It does not use the Salt API.
It works out of the box: you just need to run the exporter on the same user as the Salt Master.
$ ./salt-exporter
$ curl -s 127.0.0.1:2112/metrics
salt_expected_responses_total{function="cmd.run", state=""} 6
salt_expected_responses_total{function="state.sls",state="test"} 1
salt_function_responses_total{function="cmd.run",state="",success="true"} 6
salt_function_responses_total{function="state.sls",state="test",success="true"} 1
salt_function_status{minion="node1",function="state.highstate",state="highstate"} 1
salt_new_job_total{function="cmd.run",state="",success="false"} 3
salt_new_job_total{function="state.sls",state="test",success="false"} 1
salt_responses_total{minion="local",success="true"} 6
salt_responses_total{minion="node1",success="true"} 6
salt_scheduled_job_return_total{function="state.sls",minion="local",state="test",success="true"} 2
salt_health_last_heartbeat{minion="local"} 1703053536
salt_health_last_heartbeat{minion="node1"} 1703053536
salt_health_minions_total{} 2
-health-minions, health-functions-filter and health-states-filter are deprecated.
They should be replaced by metrics configuration in the config.yml file.
The equivalent of ./salt-exporter -health-minions -health-functions-filter "func1,func2" -health-states-filter "state1,state2" is:
metrics:
salt_responses_total:
enabled: true
salt_function_status:
enabled: true
filters:
functions:
- "func1"
- "func2"
states:
- "state1"
- "state2"Just use the binary from Github releases page.
Or, install from source:
- latest published version:
go install github.com/kpetremann/salt-exporter/cmd/salt-exporter@latest - latest commit (unstable):
go install github.com/kpetremann/salt-exporter/cmd/salt-exporter@main
Simply run:
./salt-exporter
The exporter can be configured in different ways, with the following precedence order:
- flags
- environment variables
- configuration file (config.yml)
See the official documentation for more details
