Download the PHP package aranyasen/laravel-prometheus-exporter without Composer
On this page you can find all versions of the php package aranyasen/laravel-prometheus-exporter. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download aranyasen/laravel-prometheus-exporter
More information about aranyasen/laravel-prometheus-exporter
Files in aranyasen/laravel-prometheus-exporter
Package laravel-prometheus-exporter
Short Description A prometheus exporter for Laravel
License MIT
Informations about the package laravel-prometheus-exporter
laravel-prometheus-exporter
A prometheus exporter for Laravel.
Installation
Register the service provider in app.php
Register the facade in app.php
Configuration
The package has a default configuration which uses the following environment variables.
To customize the configuration file, publish the package configuration using Artisan.
You can then edit the generated config at app/config/prometheus.php
.
Storage Adapters
The storage adapter is used to persist metrics across requests.
The PROMETHEUS_STORAGE_ADAPTER
env var is used to specify the storage adapter.
The memory
adapter lets data persist only across the current request. For production, redis
or apc
are recommended.
If redis
is used, the REDIS_HOST
and REDIS_PORT
vars also need to be configured.
Exporting Metrics
The package adds a /metrics
end-point, enabled by default, which exposes all metrics gathered by collectors.
This can be turned on/off using the PROMETHEUS_METRICS_ROUTE_ENABLED
var, and can also be changed using the
PROMETHEUS_METRICS_ROUTE_PATH
var.
If you would like to protect this end-point, you can write any custom middleware and enable it using
PROMETHEUS_METRICS_ROUTE_MIDDLEWARE
. Multiple middleware can be supplied as comma-separated values, e.g. PROMETHEUS_METRICS_ROUTE_MIDDLEWARE=auth.basic,superadmin
Collectors
A collector is a class, implementing the CollectorInterface, which is responsible for collecting data for one or many metrics.
Please see the ExampleCollector included in this repository.
You can auto-load your collectors by adding them to the collectors
array in the prometheus.php config.
Usage
All versions of laravel-prometheus-exporter with dependencies
illuminate/support Version ^10.0|^11.0
illuminate/routing Version ^10.0|^11.0
promphp/prometheus_client_php Version ^2