// the find
akoutmos/prom_ex
An Elixir Prometheus metrics collection library built on top of Telemetry with accompanying Grafana dashboards
PromEx wires Telemetry events from Phoenix, Ecto, Oban, LiveView, Absinthe, and a handful of other BEAM libraries into Prometheus metrics, and ships matching Grafana dashboards so you're not building panels from scratch. It's for Elixir teams already running Prometheus/Grafana who want library-level metrics without writing their own Telemetry handlers.
The plugin behaviour is a clean abstraction, and each plugin comes with its own tested Grafana dashboard JSON generated via EEx templates, so metrics and visualization ship together instead of as an afterthought. It has a real test suite per plugin, a config renderer, and a dashboard uploader/linter with their own tests, not just a thin wrapper around telemetry_metrics. It's opinionated by design: metric names and tags aren't configurable through options, which keeps the dashboards from rotting when someone tweaks a label — if you disagree, you fork the plugin, and the maintainer says as much upfront.
Coverage for anything outside the Phoenix/Ecto/Oban stack is thin — Finch and Redix have been listed as 'Coming soon' across multiple releases, so if your app leans on either you're writing your own plugin. It bundles a Grafana Agent binary downloader (lib/prom_ex/grafana_agent/downloader.ex) that pulls an external binary at setup time, which is an extra supply-chain surface most metrics libraries don't introduce. The /metrics endpoint has zero auth by default and the README is explicit that securing it is entirely on you — easy to forget in a public-facing deploy. It's effectively a one-maintainer project (akoutmos, who also pitches paid support in the README), so plugin requests for less common libraries move at the pace of one person's bandwidth.