Horizon provides a beautiful dashboard for monitoring Laravel queues, allowing you to observe job throughput, runtime, and failed jobs in real time.
Overview
Laravel Horizon is a queue manager that provides a visual interface for monitoring and managing queue workers. It shows job metrics, failed jobs, and allows you to retry failed jobs.
How to Access
- Log in as an administrator
- Navigate to System Tools in the sidebar
- Click on Queue Monitor (Horizon)
- The Horizon dashboard will open in your main content area
Prerequisites
- Administrator role required
- Horizon must be properly configured on the server
Dashboard Sections
Job Metrics
The main dashboard shows throughput metrics:
- Pending Jobs - Jobs waiting to be processed
- Processed Jobs - Successfully completed jobs
- Failed Jobs - Jobs that encountered errors
- Throughput - Jobs per minute rate
Recent Jobs
A live list of recently processed jobs with their status, runtime, and timestamp.
Failed Jobs Panel
Shows all failed jobs with error details, exception messages, and stack traces.
Step-by-Step Guide
Step 1: View Dashboard Overview
The main view shows an overview of queue performance. Monitor the metrics to understand system load.
Step 2: Monitor Specific Queues
Click on individual queues in the sidebar to monitor specific job types. Each queue has its own metrics.
Step 3: Review Failed Jobs
Click on the Failed Jobs tab to see all failures. Click on a job to see detailed error information.
Step 4: Retry Failed Jobs
To retry a failed job, click on the job and select Retry. You can also bulk retry multiple failed jobs.
Step 5: Balance Workloads
Horizon allows you to add or remove queue workers to balance workloads. Use the dashboard to scale workers up or down.
Job Monitoring Features
- Real-time metrics - Live updating job statistics
- Job history - Historical data of job performance
- Tag filtering - Filter jobs by tags
- Job preview - View job payload and parameters
Troubleshooting
Issue: Dashboard not loading
Solution: Check that Horizon is running. Execute php artisan horizon on the server if not running.
Issue: Jobs not appearing in real-time
Solution: Ensure Redis is running and Horizon is properly configured to use it as the queue driver.
Issue: Cannot retry failed job
Solution: Check the job's error details. Some jobs may have dependencies that prevent successful retry.
Quick Reference
| Route | admin.horizon.index |
| Permission | Admin only |
| Category | Getting Started |
