{"id":15167129,"url":"https://github.com/kpetremann/salt-exporter","last_synced_at":"2025-07-01T08:34:29.004Z","repository":{"id":41444521,"uuid":"509595697","full_name":"kpetremann/salt-exporter","owner":"kpetremann","description":"Salt Prometheus exporter working out of the box without any configuration on Salt side. Comes with an event watcher TUI.","archived":false,"fork":false,"pushed_at":"2025-06-04T16:53:26.000Z","size":15619,"stargazers_count":36,"open_issues_count":3,"forks_count":8,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-06-04T22:23:37.795Z","etag":null,"topics":["prometheus","prometheus-exporter","salt","saltstack","tui"],"latest_commit_sha":null,"homepage":"https://kpetremann.github.io/salt-exporter/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kpetremann.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["kpetremann"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":null}},"created_at":"2022-07-01T21:43:34.000Z","updated_at":"2025-06-04T16:53:07.000Z","dependencies_parsed_at":"2025-02-10T14:38:13.995Z","dependency_job_id":"a00ea952-8b39-48fc-9681-79d8b3324874","html_url":"https://github.com/kpetremann/salt-exporter","commit_stats":{"total_commits":173,"total_committers":6,"mean_commits":"28.833333333333332","dds":"0.17919075144508667","last_synced_commit":"3e614d15be05fb1cd5f3d2734fbd4eed41745ddd"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/kpetremann/salt-exporter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpetremann%2Fsalt-exporter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpetremann%2Fsalt-exporter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpetremann%2Fsalt-exporter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpetremann%2Fsalt-exporter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kpetremann","download_url":"https://codeload.github.com/kpetremann/salt-exporter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kpetremann%2Fsalt-exporter/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262928359,"owners_count":23386128,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["prometheus","prometheus-exporter","salt","saltstack","tui"],"created_at":"2024-09-27T05:40:21.633Z","updated_at":"2025-07-01T08:34:28.995Z","avatar_url":"https://github.com/kpetremann.png","language":"Go","funding_links":["https://github.com/sponsors/kpetremann","https://www.buymeacoffee.com/kpetremann"],"categories":["Tools"],"sub_categories":["Salt Project Package Repositories"],"readme":"[![Latest](https://img.shields.io/github/v/release/kpetremann/salt-exporter)](https://github.com/kpetremann/salt-exporter/releases)\n[![Go](https://img.shields.io/github/go-mod/go-version/kpetremann/salt-exporter)](https://github.com/kpetremann/salt-exporter)\n[![CI](https://github.com/kpetremann/salt-exporter/actions/workflows/go.yml/badge.svg)](https://github.com/kpetremann/salt-exporter/actions/workflows/go.yml)\n[![GitHub](https://img.shields.io/github/license/kpetremann/salt-exporter)](https://github.com/kpetremann/salt-exporter/blob/main/LICENSE)\n\n[![](https://img.shields.io/static/v1?label=Sponsor\u0026message=%E2%9D%A4\u0026logo=GitHub\u0026color=%23fe8e86)](https://github.com/sponsors/kpetremann)\n\n\u003ca href=\"https://www.buymeacoffee.com/kpetremann\" target=\"_blank\"\u003e\u003cimg src=\"https://cdn.buymeacoffee.com/buttons/v2/default-yellow.png\" alt=\"Buy Me A Coffee\" style=\"height: 60px !important;width: 217px !important;\" \u003e\u003c/a\u003e\n\n## Salt Live\n\n\u003e _`salt-run state.event pretty=True` under steroids_\n\nSalt Exporter comes with `Salt Live`. This is a Terminal UI tool to watch events in real time.\n\n\u003cimg src=\"./docs/docs/demo/tui-overview.gif\" alt=\"demo\" width=\"500\" /\u003e\n\n\n## Salt Exporter\n\n`Salt Exporter` is a Prometheus exporter for [Saltstack](https://github.com/saltstack/salt) events. It exposes relevant metrics regarding jobs and results.\n\nThis exporter is passive. It does not use the Salt API.\n\nIt works out of the box: you just need to run the exporter on the same user as the Salt Master.\n\n```\n$ ./salt-exporter\n```\n\n```\n$ curl -s 127.0.0.1:2112/metrics\n\nsalt_expected_responses_total{function=\"cmd.run\", state=\"\"} 6\nsalt_expected_responses_total{function=\"state.sls\",state=\"test\"} 1\n\nsalt_function_responses_total{function=\"cmd.run\",state=\"\",success=\"true\"} 6\nsalt_function_responses_total{function=\"state.sls\",state=\"test\",success=\"true\"} 1\n\nsalt_function_status{minion=\"node1\",function=\"state.highstate\",state=\"highstate\"} 1\n\nsalt_new_job_total{function=\"cmd.run\",state=\"\",success=\"false\"} 3\nsalt_new_job_total{function=\"state.sls\",state=\"test\",success=\"false\"} 1\n\nsalt_responses_total{minion=\"local\",success=\"true\"} 6\nsalt_responses_total{minion=\"node1\",success=\"true\"} 6\n\nsalt_scheduled_job_return_total{function=\"state.sls\",minion=\"local\",state=\"test\",success=\"true\"} 2\n\nsalt_health_last_heartbeat{minion=\"local\"} 1703053536\nsalt_health_last_heartbeat{minion=\"node1\"} 1703053536\n\nsalt_health_minions_total{} 2\n```\n\n### Deprecation notice\n\n`-health-minions`, `health-functions-filter` and `health-states-filter` are deprecated.\nThey should be replaced by metrics configuration in the `config.yml` file.\n\nThe equivalent of `./salt-exporter -health-minions -health-functions-filter \"func1,func2\" -health-states-filter \"state1,state2\"` is:\n\n```yaml\nmetrics:\n  salt_responses_total:\n    enabled: true\n\n  salt_function_status:\n    enabled: true\n    filters:\n      functions:\n        - \"func1\"\n        - \"func2\"\n      states:\n        - \"state1\"\n        - \"state2\"\n```\n\n### Installation\n\nJust use the binary from [Github releases](https://github.com/kpetremann/salt-exporter/releases) page.\n\nOr, install from source:\n- latest published version: `go install github.com/kpetremann/salt-exporter/cmd/salt-exporter@latest`\n- latest commit (unstable): `go install github.com/kpetremann/salt-exporter/cmd/salt-exporter@main`\n\n### Usage\n\nSimply run:\n```./salt-exporter```\n\nThe exporter can be configured in different ways, with the following precedence order:\n* flags\n* environment variables\n* configuration file (config.yml)\n\nSee the [official documentation](https://kpetremann.github.io/salt-exporter) for more details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkpetremann%2Fsalt-exporter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkpetremann%2Fsalt-exporter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkpetremann%2Fsalt-exporter/lists"}