LKaemmerling / laravel-horizon-prometheus-exporter by LKDevelopment

A small package to gain and export long time information from Laravel & Horizon for Prometheus.
851,565
127
5
Package Data
Maintainer Username: LKDevelopment
Maintainer Contact: kontakt@lukas-kaemmerling.de (Lukas Kämmerling)
Package Create Date: 2019-10-23
Package Last Update: 2024-03-12
Home Page:
Language: PHP
License: MIT
Last Refreshed: 2024-04-19 15:15:37
Package Statistics
Total Downloads: 851,565
Monthly Downloads: 43,596
Daily Downloads: 2,145
Total Stars: 127
Total Watchers: 5
Total Forks: 17
Total Open Issues: 2

Laravel Horizon Prometheus Exporter

Latest Version on Packagist Actions Status Total Downloads

This package allows an easy way to expose the Laravel Horizon Metrics to Prometheus.

Prom... What?

Prometheus is a scraping service which allows you to easily store and scrape information from your application, server or even from your router! Prometheus itself does not know about your application, so you need a exporter on your app. This small package is exactly this, an exporter which allows Prometheus to understand some information from your application. With Prometheus and a visualisation tool called Grafana you can build something like this beautiful Dashboard:

Laravel Horizon Prometheus Exporter Dashboard

Installation

You can install the package via composer:

composer require lkaemmerling/laravel-horizon-prometheus-exporter

Configuration

php artisan vendor:publish --provider=LKDevelopment\\HorizonPrometheusExporter\\HorizonPrometheusExporterServiceProvider

You can configure this package by changing the values in config/horizon-exporter.php.

Custom Metrics

You can also use this package easily to expose custom metrics. You just need to implement the LKDevelopment\HorizonPrometheusExporter\Contracts\Exporter interface and then add your implementation to your config/horizon-exporter.php like we do it for the Horizon exporters: https://github.com/LKaemmerling/laravel-horizon-prometheus-exporter/blob/master/config/config.php#L17

Dashboard

You can find a sample dashboard using this metrics on the Grafana Marketplace.

Testing

composer test

Changelog

Please see Releases for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email kontakt@lukas-kaemmerling.de instead of using the issue tracker.

Credits

License

The MIT License (MIT). Please see License File for more information.