{"id":21291504,"url":"https://github.com/postfinance/promi","last_synced_at":"2025-03-15T16:33:58.326Z","repository":{"id":57708370,"uuid":"353592257","full_name":"postfinance/promi","owner":"postfinance","description":"CLI to query targets and alerts of multiple prometheus servers.","archived":false,"fork":false,"pushed_at":"2021-08-10T12:51:18.000Z","size":2401,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-01-22T06:22:27.707Z","etag":null,"topics":["cli","prometheus"],"latest_commit_sha":null,"homepage":"","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/postfinance.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-04-01T06:03:56.000Z","updated_at":"2023-10-26T09:07:02.000Z","dependencies_parsed_at":"2022-09-14T13:10:41.701Z","dependency_job_id":null,"html_url":"https://github.com/postfinance/promi","commit_stats":null,"previous_names":["postfinance/promcli"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postfinance%2Fpromi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postfinance%2Fpromi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postfinance%2Fpromi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postfinance%2Fpromi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/postfinance","download_url":"https://codeload.github.com/postfinance/promi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243760386,"owners_count":20343626,"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":["cli","prometheus"],"created_at":"2024-11-21T13:34:01.736Z","updated_at":"2025-03-15T16:33:58.301Z","avatar_url":"https://github.com/postfinance.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Go Report Card](https://goreportcard.com/badge/github.com/postfinance/promi)](https://goreportcard.com/report/github.com/postfinance/promi)\n[![Coverage Status](https://coveralls.io/repos/github/postfinance/promi/badge.svg)](https://coveralls.io/github/postfinance/promi)\n[![Build Status](https://github.com/postfinance/promi/workflows/build/badge.svg)](https://github.com/postfinance/promi/actions)\n\n# promi\n\nCLI and Web UI to view targets and alerts of multiple prometheus servers.\n\n# Usage\n\nCreate a configuration file with required prometheus servers in `$HOME/.config/promi/config.yaml`:\n\n```yaml\nprometheus-urls:\n    - http://prometheus101.example.com\n    - http://prometheus102.example.com\n    - http://prometheus103.example.com\n```\n\nOr you can create an environment variable:\n\n```console\nexport PROMI_PROMETHEUS_URLS=http://prometheus101.example.com,http://prometheus102.example.com,http://prometheus103.example.com\n```\n\n## Web UI\nIf you run the command:\n\n```console\n$ promi server\n```\n\nand point your browser to http://localhost:8080 you get the official prometheus web ui with all consolidated targets. The source code\nis taken from prometheus [react-app](https://github.com/prometheus/prometheus/tree/main/web/ui/react-app). Only the targets endpoint work and\nthe classic ui is omitted.\n\nIf multiple prometheus servers scrape the same endpoint you can run the server with the option `--deduplicate`.\n\n## CLI\nTo list all targets run:\n\n```console\n$ promi targets\n```\n\n```console\n$ promi targets --help\nUsage: promi targets\n\nShow targets.\n\nFlags:\n  -h, --help                                         Show context-sensitive help ($PROMI_HELP).\n  -u, --prometheus-urls=http://localhost:9090,...    A comma separated list of prometheus base URLs ($PROMI_PROMETHEUS_URLS).\n      --show-config                                  Show used config files ($PROMI_SHOW_CONFIG)\n      --version                                      Show version information ($PROMI_VERSION)\n  -d, --debug                                        Show debug output ($PROMI_DEBUG).\n      --timeout=10s                                  The http request timeout ($PROMI_TIMEOUT).\n\n  -o, --output=\"table\"                               Output format (table|json|yaml) ($PROMI_OUTPUT).\n  -c, --compact                                      Do not display labels and last error ($PROMI_COMPACT).\n  -n, --no-headers                                   Do not display headers in table output ($PROMI_NO_HEADERS).\n  -N, --filter-name=STRING                           Filter targets by job name (regular expression) ($PROMI_FILTER_NAME).\n  -S, --filter-server=STRING                         Filter targets by promehteus server name (regular expression) ($PROMI_FILTER_SERVER).\n  -u, --filter-scrape-url=STRING                     Filter targets by scrape url (regular expression) ($PROMI_FILTER_SCRAPE_URL).\n  -H, --filter-health=HEALTH-STATUS                  Filter targets by health (up|down) ($PROMI_FILTER_HEALTH)\n  -s, --filter-selector=STRING                       Filter services by (k8s style) selector ($PROMI_FILTER_SELECTOR).\n```\n\nTo list all alerts run:\n\n```console\n$ promi alerts\n```\n\n```console\n$ promi alerts --help\nUsage: promi alerts\n\nShow alerts.\n\nFlags:\n  -h, --help                                         Show context-sensitive help ($PROMI_HELP).\n  -u, --prometheus-urls=http://localhost:9090,...    A comma separated list of prometheus base URLs ($PROMI_PROMETHEUS_URLS).\n      --show-config                                  Show used config files ($PROMI_SHOW_CONFIG)\n      --version                                      Show version information ($PROMI_VERSION)\n  -d, --debug                                        Show debug output ($PROMI_DEBUG).\n      --timeout=10s                                  The http request timeout ($PROMI_TIMEOUT).\n\n  -o, --output=\"table\"                               Output format (table|json|yaml) ($PROMI_OUTPUT).\n  -n, --no-headers                                   Do not display headers in table output ($PROMI_NO_HEADERS).\n  -N, --filter-name=STRING                           Filter alerts by job name (regular expression) ($PROMI_FILTER_NAME).\n  -a, --filter-alert=STRING                          Filter alerts by alert name (regular expression) ($PROMI_FILTER_ALERT).\n  -S, --filter-server=STRING                         Filter alerts by prometheus server name (regular expression) ($PROMI_FILTER_SERVER).\n  -s, --filter-state=ALERT-STATE                     Filter alerts by state (pending|firing) ($PROMI_FILTER_STATE)\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpostfinance%2Fpromi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpostfinance%2Fpromi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpostfinance%2Fpromi/lists"}