Download the PHP package jaydeep/laravel-queue-monitor without Composer

On this page you can find all versions of the php package jaydeep/laravel-queue-monitor. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-queue-monitor

Laravel Queue Monitor

Monitor your Laravel queues at a glance. Laravel Queue Monitor records the full lifecycle of every queued job and shows you pending, running, completed, and failed jobs — from an Artisan command or a live web dashboard.

Laravel ships with failed_jobs (failed) and a jobs table (pending, database driver only), but it never stores completed jobs. This package fills that gap by subscribing to Laravel's queue events and persisting each job's lifecycle to a dedicated queue_monitor table — so it works with any queue driver (database, Redis, SQS, …).

Screenshots

The live dashboard with stat cards and the recent-jobs table.

Queued (pending) jobs:

Completed & failed jobs:

Requirements

Installation

From Packagist

Local development (path repository)

If you are working on the package from a local checkout, add a path repository to your application's composer.json before requiring it:

Publish and migrate

The service provider is auto-discovered. Publish and run the migration:

Optionally publish the config and views:

Usage

Artisan command

Options:

Option Description
--json Output the full snapshot as JSON
--limit=N Number of recent jobs to list
--prune Delete records older than the configured retention hours

--json returns a machine-readable snapshot:

Web dashboard

Visit /queue-monitor in your browser for a live, auto-refreshing, responsive Bootstrap 5 dashboard with stat cards and a paginated recent jobs table (Prev / Next). It polls /queue-monitor/stats on the interval set in config; the stat cards always reflect global totals while the table is paged.

The stats endpoint accepts pagination query parameters:

Response shape:

Security: the dashboard uses the web middleware group by default. Before exposing it in production, add authentication/authorization middleware in config/queue-monitor.php (route.middleware), e.g. ['web', 'auth'].

Configuration

config/queue-monitor.php:

Key Default Description
enabled true Master switch for lifecycle recording
table queue_monitor Monitor table name
connection null DB connection for the table (null = default)
route.enabled true Enable the web dashboard routes
route.prefix queue-monitor URL prefix for the dashboard
route.middleware ['web'] Middleware applied to the dashboard routes
route.refresh 5 Dashboard auto-refresh interval (seconds)
recent_limit 25 Recent jobs shown in the console command
per_page 15 Jobs per page on the web dashboard
prune_after_hours 72 Retention window used by --prune (null = keep)

Each key is also driven by an environment variable — set QUEUE_MONITOR_ENABLED=false to switch recording off without touching config, or QUEUE_MONITOR_ROUTE_ENABLED=false to disable the dashboard routes.

How it works

The package registers a subscriber for Laravel's queue events:

Event Recorded status
JobQueued queued
JobProcessing running
JobProcessed completed
JobFailed failed

Records are correlated by job id across events. All monitor writes are wrapped in a guard, so a monitoring error can never interrupt the job being processed.

queue_monitor table

Column Notes
id Primary key
job_id Driver job id (used to correlate events)
name Resolved job class name
connection, queue Where the job ran
status queued / running / completed / failed
attempts Attempt count at last update
queued_at, started_at, finished_at Lifecycle timestamps
duration_ms Processing time in milliseconds
exception Full exception string for failed jobs
created_at, updated_at Eloquent timestamps

Querying in code

Testing

License

MIT © Jaydeep Gadhiya


All versions of laravel-queue-monitor with dependencies

PHP Build Version
Package Version
Requires php Version ^7.4|^8.0|^8.1|^8.2|^8.3|^8.4
illuminate/console Version ^8.0|^9.0|^10.0|^11.0|^12.0
illuminate/database Version ^8.0|^9.0|^10.0|^11.0|^12.0
illuminate/queue Version ^8.0|^9.0|^10.0|^11.0|^12.0
illuminate/support Version ^8.0|^9.0|^10.0|^11.0|^12.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package jaydeep/laravel-queue-monitor contains the following files

Loading the files please wait ...