New

Just launched: Vueblocks, a brand-new search engine for Vue packages! Explore Vueblocks →

worksome/horizon-telemetry

An Opentelemetry implementation for Laravel Horizon and queues
336,645 8
Install
composer require worksome/horizon-telemetry
Latest Version:v0.7.3
PHP:^8.4
Laravel:12 · 13
Older releases:9 · 10 · 11
License:MIT
Last Updated:Oct 28, 2026
Links: GitHub  ·  Packagist
Maintainer: owenvoke

OpenTelemetry for Laravel Horizon and queues

Latest Version on Packagist GitHub Tests Action Status GitHub Static Analysis Action Status Total Downloads

This package adds support for creating various matrices on your queues with the usage of Horizon.

This package requires that the scheduler is running, as it is adding new scheduled commands.

Installation

You can install the package via composer:

composer require worksome/horizon-telemetry

Usage

Metrics

CurrentMasterSupervisorsMetric

The CurrentMasterSupervisorsMetric will register the current number of master supervisors.
The metric will be registered under the name horizon_current_master_supervisors.

The default schedule for this is every 10 minutes (*/10 * * * *), to configure this, add MeterName::CurrentMasterSupervisors->value under a horizon key in your telemetry.php config file.

CurrentProcessesMetric

The CurrentProcessesMetric will register the current number of processes in each queue.
The metrics will be registered under the name horizon_current_processes.<queue_name>.

The default schedule for this is every 10 minutes (*/10 * * * *), to configure this, add MeterName::CurrentProcesses->value under a horizon key in your telemetry.php config file.

CurrentJobsMetric

The CurrentJobsMetric will register the current number of jobs in each queue.
The metrics will be registered under the name horizon_current_jobs.<queue_name>.

The default schedule for this is every 10 minutes (*/10 * * * *), to configure this, add MeterName::CurrentJobs->value under a horizon key in your telemetry.php config file.

Event Listeners

FailedJobsListener

The FailedJobsListener listener will create an observable counter that will increment each time a job fails. This metric will be registered under the name horizon_failed_jobs.

The default schedule for this is true, to disable this event listener, add MeterName::FailedJobs->value => false under a horizon key in your telemetry.php config file.

ProcessedJobsListener

The ProcessedJobsListener listener will create an observable counter that will increment each time a job is processed. This metric will be registered under the name horizon_processed_jobs.

The default schedule for this is true, to disable this event listener, add MeterName::ProcessedJobs->value => false under a horizon key in your telemetry.php config file.

ProcessedJobsPeakMemoryUsageListener

The ProcessedJobsPeakMemoryUsageListener listener will create a histogram over peak memory usage each time a job is processed. This metric will be registered under the name horizon_processed_jobs_peak_memory_usage.

Two listeners are actually registered here, the secondary listener is ProcessedJobsPeakMemoryUsagePreparationListener which will take care of clearing the peak memory usage before a job starts, so for long-running queue workers, we get the correct number.

The default schedule for this is true, to disable this event listener, add MeterName::ProcessedJobsPeakMemoryUsage->value => false under a horizon key in your telemetry.php config file.

Testing

composer test

Related Packages

worksome/request-factories

Test Form Requests in Laravel without all of the boilerplate.

2,432,361 621
worksome/envy

Automatically keep your .env files in sync.

2,118,640 688
worksome/exchange

Check Exchange Rates for any currency in Laravel.

708,293 126
worksome/verify-by-phone

Verify your users by call or SMS

680,454 147
worksome/feature-flags

A package to manage feature flags in your application

583,240 11

Version History

Version Released PHP Laravel License
v0.7.3 ^8.4 ^12.0 || ^13.0 MIT
v0.7.2 ^8.3 ^11.0 || ^12.0 MIT
v0.7.1 ^8.3 ^11.0 || ^12.0 MIT
v0.7.0 ^8.2 ^10.0 || ^11.0 MIT
v0.6.1 ^8.2 ^10.0 || ^11.0 MIT