Download the PHP package abinashbhatta/lightweight-queue-inspector without Composer
On this page you can find all versions of the php package abinashbhatta/lightweight-queue-inspector. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download abinashbhatta/lightweight-queue-inspector
More information about abinashbhatta/lightweight-queue-inspector
Files in abinashbhatta/lightweight-queue-inspector
Package lightweight-queue-inspector
Short Description A lightweight debugging dashboard for Laravel applications using the database queue driver
License MIT
Informations about the package lightweight-queue-inspector
⚡ Lightweight Queue Inspector
A lightweight debugging dashboard for Laravel applications using the database queue driver.
No Redis. No Horizon. Just your existing jobs and failed_jobs tables.
What It Does
| Page | Description |
|---|---|
/queue-inspector |
Dashboard with summary stats |
/queue-inspector/pending |
All pending jobs with collapsible payload viewer |
/queue-inspector/success |
Successfully completed jobs with execution time + memory |
/queue-inspector/failed |
Failed jobs with exception messages, stack traces, retry + delete |
Features
- Pending Jobs — view all jobs waiting in the queue with ID, class name, queue, attempts, timestamps and raw payload
- Failed Jobs — view exception messages, full stack traces, retry or delete individual jobs, bulk retry all, clear all
- Success Jobs — track every completed job with execution time (color coded: green/orange/red) and memory usage
- Execution Tracking — automatically records job metrics via Laravel queue events. No extra setup needed
- Dashboard Stats — pending count, failed count, success count, average execution time, top failing job, active queues
- Filters — filter any page by queue name or job class
- Installation Warnings — terminal warnings if required tables are missing, wrong queue driver, or auth not configured
- Security Guard — friendly browser page if auth middleware is configured but no login route exists yet
Screenshots
Dashboard
Successful Jobs — with execution time tracking
Failed Jobs — with exception messages and actions
Requirements
- PHP 8.1 or higher
- Laravel 10 or Laravel 11
- Queue connection set to
database
Installation
Step 1 — Install via Composer
Step 2 — Make sure required tables exist
If you don't have the jobs table:
If you don't have the failed_jobs table:
Step 3 — Run the package migration
This creates the queue_job_metrics table used for execution tracking:
Step 4 — Set queue driver to database
In your .env file:
Step 5 — Publish the config (optional but recommended)
Step 6 — Visit the dashboard
That's it. The package auto-discovers via Laravel's package discovery — no need to add anything to config/app.php.
Configuration
After publishing, open config/queue-inspector.php:
Security
⚠ IMPORTANT: The dashboard exposes sensitive job data — payloads, exception messages, stack traces, and allows retrying or deleting jobs. Always protect it with authentication in production.
The package will warn you in the terminal if auth is missing
Every time you run any php artisan command, you will see:
The package will warn you if auth is set but no login route exists
If you have 'auth' in the config but your app has no login system installed:
Terminal warning:
Browser page: Instead of a confusing error, the dashboard shows a friendly setup guide page with both options explained clearly.
Recommended middleware setups
Execution Tracking
The package automatically listens to Laravel's built-in queue events. No configuration needed.
| Event | What gets recorded |
|---|---|
JobProcessing |
job class, queue name, started_at timestamp |
JobProcessed |
finished_at, execution_time_ms, memory_usage_mb, status = success |
JobFailed |
finished_at, execution_time_ms, status = failed, exception message |
Note: These events only fire when jobs are processed by
php artisan queue:work. They do not fire for jobs sitting in the pending queue.
Execution time color coding on the Success Jobs page
| Color | Time | Meaning |
|---|---|---|
| 🟢 Green | Under 500ms | Fast — no action needed |
| 🟠 Orange | 500ms – 2000ms | Acceptable — keep an eye on it |
| 🔴 Red | Over 2000ms | Slow — consider optimising |
Installation Warnings Reference
The package checks your setup on every artisan command and warns you clearly:
| Warning | Cause | Fix |
|---|---|---|
| Table 'jobs' not found | jobs table missing | php artisan queue:table && php artisan migrate |
| Table 'failed_jobs' not found | failed_jobs table missing | php artisan queue:failed-table && php artisan migrate |
| Table 'queue_job_metrics' not found | package migration not run | php artisan migrate |
| Queue driver is not 'database' | wrong driver in .env | Set QUEUE_CONNECTION=database |
| Dashboard publicly accessible | no auth in middleware config | Add 'auth' to middleware |
| Auth set but no login route | auth on but no login system | Install Breeze or remove auth |
Facade Usage
Use the QueueInspector facade anywhere in your application:
Customising Views
Publish the views to customise the dashboard UI:
This copies all Blade files to resources/views/vendor/queue-inspector/ in your app.
Laravel automatically loads your customised versions instead of the package defaults.
Changelog
v1.0.1 — Initial Release
- Dashboard with stats summary
- Pending jobs list with payload viewer
- Failed jobs with retry and delete actions
- Success jobs with execution time and memory tracking
- Automatic execution tracking via queue events
- Installation warnings system
- Auth misconfiguration detection
- Facade support
- Laravel 10, 11, 12 compatible
Roadmap — Coming Soon
These features are planned for upcoming versions. Community contributions are welcome!
| Feature | Version | Status |
|---|---|---|
| Auto refresh dashboard every X seconds | v1.1.0 | 🔜 Planned |
| Job scheduling — see scheduled jobs | v1.1.0 | 🔜 Planned |
| Email/Slack notification when job fails | v1.1.0 | 🔜 Planned |
| Dark mode support | v1.2.0 | 🔜 Planned |
| Export failed jobs to CSV | v1.2.0 | 🔜 Planned |
| Processing jobs page (currently running) | v1.2.0 | 🔜 Planned |
| Job attempt history per job UUID | v1.3.0 | 🔜 Planned |
| Charts — job trends over time | v1.3.0 | 🔜 Planned |
| Multi-connection support | v2.0.0 | 💭 Considering |
Contributing
Contributions are welcome and appreciated!
- Fork the repository
-
Create a feature branch
- Make your changes
-
Commit with a clear message
-
Push to your fork
- Open a Pull Request on GitHub
Please make sure your code follows the existing style and all existing tests still pass.
Bug Reports & Feature Requests
Found a bug? Have a feature idea?
👉 Open an issue on GitHub: https://github.com/abinash889/lightweight-queue-inspector/issues
Please include:
- Laravel version
- PHP version
- Steps to reproduce (for bugs)
- Expected vs actual behaviour
License
MIT — free to use in personal and commercial projects.
Author
Abinash Bhatta
Built with ❤️ for the Laravel community.
All versions of lightweight-queue-inspector with dependencies
illuminate/support Version ^10.0|^11.0|^12.0
illuminate/database Version ^10.0|^11.0|^12.0
illuminate/queue Version ^10.0|^11.0|^12.0
illuminate/http Version ^10.0|^11.0|^12.0