spatie/laravel-prometheus
Export Laravel app metrics to Prometheus via a /prometheus endpoint. Register custom gauges/counters with simple callbacks, use built-in queue and Horizon metrics, and optionally secure the endpoint. Ideal for scraping by Prometheus and charting in Grafana.
This package can export key metrics of your app to Prometheus. It does this by providing an easy way to register metrics. Here's an example where we are going to export the user count to Prometheus.
Prometheus::addGauge('User count')
->value(fn() => User::count());
These metrics will be exposed at the /prometheus endpoint. The package offers a way to add a security layer, so your key metrics don't become public.
You can configure your Prometheus instance to periodically crawl and import the metrics at the /prometheus endpoint of your app. Using Grafana, you can visualize the data points that are stored in Prometheus.
The package includes several built-in collectors for common Laravel functionality:
Monitor your Laravel queues with comprehensive metrics including queue sizes, pending jobs, delayed jobs, and more. Supports all Laravel queue drivers (Redis, Database, SQS, etc.) with graceful fallbacks. If you're using Horizon, please use the Horizon collectors listed below instead!
// Enable all queue collectors
$this->registerQueueCollectors(['high', 'normal', 'low'], 'redis');
Export Laravel Horizon metrics including supervisor status, workload distribution, job throughput, and failure rates.
// Enable all Horizon collectors
$this->registerHorizonCollectors();
How can I help you explore Laravel packages today?