Filament Queue Management
#Filament Queue Management
A Filament plugin to manage Laravel's database-driver queue tables (jobs, failed_jobs, job_batches) directly from your panel. It is a Filament UI port of the Nova package kaiserkiwi/nova-queue-management, built on top of the framework-agnostic jeffersongoncalves/laravel-queue-management core (the queue models and the QueueManager service) and the shared jeffersongoncalves/filament-plugin-core.
#Features
- 📋 Monitor pending jobs (
jobstable) and prune them individually or in bulk - ♻️ Retry, retry-all, forget and flush-all failed jobs (
failed_jobstable) - 📦 Inspect job batches (
job_batchestable) read-only, including failed job ids and options - 🔎 Searchable, sortable tables with payload / exception viewers (pretty JSON)
- 🧭 All three resources grouped under a configurable "Queue Management" navigation group
- ⚙️ Fluent customisation of the navigation group label, sort, per-resource slugs and icons
#Compatibility
| Plugin Version | Filament | PHP | Laravel |
|---|---|---|---|
| 1.x | ^3.0 | ^8.2 | ^10.0 |
| 2.x | ^4.0 | ^8.2 | ^11.0 |
| 3.x | ^5.0 | ^8.3 | ^12.0/^13.0 |
#Installation
You can install the package via composer (the jeffersongoncalves/laravel-queue-management core is pulled in automatically):
composer require jeffersongoncalves/filament-queue-management:"^3.0"
You can publish the config file with:
php artisan vendor:publish --tag="filament-queue-management-config"
This plugin reads Laravel's standard
jobs,failed_jobsandjob_batchestables. Make sure your application uses thedatabasequeue driver (and thedatabase/database-uuidsfailed job driver) and has run the queue migrations.
#Usage
#Register the plugin
use Filament\Panel; use JeffersonGoncalves\Filament\QueueManagement\FilamentQueueManagementPlugin; public function panel(Panel $panel): Panel { return $panel ->plugins([ FilamentQueueManagementPlugin::make() ->navigationGroup('Queue Management') // null => translated default label ->navigationSort(99) ->jobsSlug('jobs') ->failedJobsSlug('failed-jobs') ->jobBatchesSlug('job-batches') ->jobsNavigationIcon('heroicon-o-queue-list') ->failedJobsNavigationIcon('heroicon-o-exclamation-triangle') ->jobBatchesNavigationIcon('heroicon-o-rectangle-stack'), ]); }
All fluent methods are optional and return $this for chaining. If you do not register the plugin, the three resources can also be discovered automatically through the package service provider, in which case configuration is read from the published config file.
#Configuration
return [ 'navigation' => [ 'group' => null, // null => translated "Queue Management" 'sort' => null, ], 'resources' => [ 'jobs' => [ 'slug' => 'jobs', 'navigation_icon' => 'heroicon-o-queue-list', ], 'failed_jobs' => [ 'slug' => 'failed-jobs', 'navigation_icon' => 'heroicon-o-exclamation-triangle', ], 'job_batches' => [ 'slug' => 'job-batches', 'navigation_icon' => 'heroicon-o-rectangle-stack', ], ], ];
#Testing
composer test
#Changelog
Please see CHANGELOG for more information on what has changed recently.
#Contributing
Please see CONTRIBUTING for details.
#Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
#Credits
#License
The MIT License (MIT). Please see License File for more information.