Monitor Laravel Queues on Any Driver with Vigilance | Mohamed Said       [Skip to content](#main)  [ ![](https://cdn.msaied.com/01KT78WE565VEMM3PSNQAAB0MH.png) Mohamed SaidLaravel Backend Engineer ](https://www.msaied.com/public) - [Home](https://www.msaied.com/public)
- [Projects](https://www.msaied.com/public/projects)
- [Articles](https://www.msaied.com/public/articles)
- [Certificates](https://www.msaied.com/public/certificates)
- [About](https://www.msaied.com/public#about)

           [  Contact](https://www.msaied.com/public#contact) Menu 

Menu
----

Close 

 - [HomeStart here](https://www.msaied.com/public)
- [ProjectsCase studies](https://www.msaied.com/public/projects)
- [ArticlesEngineering notes](https://www.msaied.com/public/articles)
- [CertificatesCredentials](https://www.msaied.com/public/certificates)
- [AboutHow I work](https://www.msaied.com/public#about)
- [ContactGet in touch](https://www.msaied.com/public#contact)

  [Start a conversation](https://www.msaied.com/public#contact) [WhatsApp](https://wa.me/201094619204) [Email](mailto:hello@msaied.com) 

 1. [Home](https://www.msaied.com/public)
2. /
3. [Articles](https://www.msaied.com/public/articles)
4. /
5. [Laravel](https://www.msaied.com/public/articles?category=laravel)
6. /
7. Monitor Laravel Queues, Commands, and Schedulers on Any Driver with Vigilance

   [Laravel](https://www.msaied.com/public/articles?category=laravel) [Composer Pacakge](https://www.msaied.com/public/articles?category=composer-pacakge) 

 Monitor Laravel Queues, Commands, and Schedulers on Any Driver with Vigilance
==============================================================================

 Vigilance is a Laravel monitoring dashboard that tracks jobs, Artisan commands, and scheduled tasks across every queue driver—database, Redis, SQS, Beanstalkd, and sync—in one unified timeline.

 ![](https://cdn.msaied.com/01M22N44A70A5MC2S599JP0MPH.webp) [Mohamed Said](https://www.msaied.com/public#person) Published 19 Jun 2026 · Updated 19 Jun 2026 · 4 min read

ShareCopy linkCopied

 ![Monitor Laravel Queues, Commands, and Schedulers on Any Driver with Vigilance](https://cdn.msaied.com/243/78878facaaaca520b683f11457ef4785.png) 

  On this page +1. [What Is Vigilance?](#what-is-vigilance)
2. [One Record Per Run, Across Every Driver](#one-record-per-run-across-every-driver)
3. [Manual Dispatch From Typed Forms](#manual-dispatch-from-typed-forms)
4. [Custom Metrics and Core Web Vitals](#custom-metrics-and-core-web-vitals)
5. [Installation and Securing the Dashboard](#installation-and-securing-the-dashboard)
6. [Beyond Queue History](#beyond-queue-history)
7. [Key Takeaways](#key-takeaways)

 What Is Vigilance?
------------------

[Vigilance](https://github.com/anousss007/laravel-vigilance) is an open-source monitoring dashboard for Laravel applications. It records queued jobs, Artisan commands, and scheduled tasks as they move through their lifecycle—from queued to running to completed or failed—capturing execution parameters, exit codes, and redacted exception traces along the way.

The key differentiator: Vigilance is queue-driver agnostic. Horizon only covers Redis queues, and Telescope is aimed at local debugging. Vigilance writes a single row per run and updates it throughout the run's lifecycle, giving you one timeline regardless of whether you use database, Redis, SQS, Beanstalkd, or sync.

**Requirements:** PHP 8.2+, Laravel 12 or 13, Livewire 3.5+ or 4, MIT license.

---

One Record Per Run, Across Every Driver
---------------------------------------

Each record stores execution parameters, final state, and a redacted exception trace when something goes wrong. Secrets are stripped automatically before storage.

To keep storage costs manageable on busy queues, Vigilance samples successful runs at dispatch time while always retaining failures:

```env
VIGILANCE_SAMPLE_RATE=0.1
VIGILANCE_RETENTION_DAYS=7
VIGILANCE_DB_CONNECTION=monitoring

```

Pointing `VIGILANCE_DB_CONNECTION` to a dedicated database isolates monitoring writes from your primary connection. Pruning is handled automatically based on the retention setting.

---

Manual Dispatch From Typed Forms
--------------------------------

When control features are enabled, Vigilance can dispatch jobs directly from the dashboard. Mark a job with the `Dispatchable` contract and Vigilance reads the constructor signature via reflection to generate a form:

```php
use Vigilance\Contracts\Dispatchable;

class ProcessPodcast implements ShouldQueue, Dispatchable
{
    public static string $vigilanceLabel = 'Process a podcast';

    public function __construct(public Podcast $podcast, public bool $notify = true) {}
}

```

The generated form handles scalars, enums, dates, and Eloquent model binding automatically. The same mechanism lets you run allowlisted Artisan commands from the UI. Both features are off by default:

```env
VIGILANCE_CONTROL_ENABLED=true

```

---

Custom Metrics and Core Web Vitals
----------------------------------

Vigilance also collects application-level data. Use the counter and gauge API from your own code:

```php
use Vigilance\Vigilance;

Vigilance::increment('signups');
Vigilance::gauge('cart_value', $cart->total());

```

For frontend performance, enable Real User Monitoring (RUM) and add the Blade directive to your layout:

```env
VIGILANCE_RUM=true

```

```blade
@vigilanceRum

```

This collects Core Web Vitals (LCP, INP, CLS, FCP, TTFB) from real visitors and surfaces p50, p95, and p99 latencies alongside your queue and command timelines.

---

Installation and Securing the Dashboard
---------------------------------------

```bash
composer require anousss007/vigilance
php artisan vigilance:install
php artisan migrate

```

The dashboard is local-only until you explicitly authorise access via a callback or Gate:

```php
use Vigilance\Vigilance;

Vigilance::auth(fn ($request) => in_array($request->user()?->email, [
    'you@example.com',
]));

```

The dashboard is available at `/vigilance` by default.

---

Beyond Queue History
--------------------

Vigilance includes several additional optional features:

- **Issues inbox** — fingerprinted exceptions grouped across web requests, jobs, commands, and the browser
- **SLO tracking** — error budgets and burn-rate alerts
- **Release health** — error rate comparisons before and after a deploy
- **Request and job tracing** — per-request waterfalls with N+1 detection
- **Uptime checks** — availability and latency monitoring
- **Log explorer** — searchable logs correlated to traces
- **Alerting** — Slack, Discord, Teams, or webhook
- **Worker supervisor** — fills Horizon's role for non-Redis drivers
- **AI agent access** — read-only access over an MCP server

---

Key Takeaways
-------------

- Works with any Laravel queue driver, not just Redis
- Configurable sample rate keeps storage costs low while retaining all failures
- Reflection-based dispatch forms reduce the need for manual tooling
- RUM and custom metrics bring frontend and business data into the same dashboard
- All sensitive data is redacted before storage
- MIT-licensed and self-hosted

Source: [Laravel News — Monitor Laravel Queues, Commands, and Schedulers on Any Driver with Vigilance](https://laravel-news.com/monitor-laravel-queues-commands-and-schedulers-on-any-driver-with-vigilance)

- [Laravel](https://www.msaied.com/public/articles?search=Laravel)
- [Queue Monitoring](https://www.msaied.com/public/articles?search=Queue%20Monitoring)
- [Laravel Packages](https://www.msaied.com/public/articles?search=Laravel%20Packages)
- [Open Source](https://www.msaied.com/public/articles?search=Open%20Source)
- [PHP](https://www.msaied.com/public/articles?search=PHP)

 Frequently asked questions 
---------------------------

  How is Vigilance different from Laravel Horizon and Telescope?Horizon only monitors Redis-backed queues, and Telescope is designed for local debugging. Vigilance works with any queue driver—database, Redis, SQS, Beanstalkd, and sync—and is built for production use, writing a single record per run updated throughout its lifecycle.

   How does Vigilance handle storage costs on high-throughput queues?Vigilance samples successful runs at dispatch time using a configurable sample rate (e.g., VIGILANCE\_SAMPLE\_RATE=0.1 keeps 10% of successes) while always retaining failed runs. You can also point it to a separate database connection and set a retention period for automatic pruning.

   Can Vigilance dispatch jobs and run Artisan commands from the dashboard?Yes, when VIGILANCE\_CONTROL\_ENABLED=true is set, Vigilance uses reflection to read a job's constructor signature and generates a typed form for dispatching it. The same mechanism supports running allowlisted Artisan commands from the UI. Both features are off by default.

   ![Mohamed Said](https://cdn.msaied.com/01M22N44A70A5MC2S599JP0MPH.webp)About the author
----------------

[Mohamed Said](https://www.msaied.com/public#person)Senior Backend Engineer specializing in Laravel, scalable SaaS platforms, APIs, and cloud infrastructure. I build secure, high-performance web applications that help businesses grow.

[About](https://www.msaied.com/public#about) [GitHub ↗](https://github.com/EG-Mohamed) [LinkedIn ↗](https://www.linkedin.com/in/msaiedm/) [WhatsApp ↗](https://wa.me/201094619204) [Email Address ↗](mailto:hello@msaied.com) [My CV ↗](https://drive.google.com/file/u/0/d/1MF20IPRJyzfy32mhEutjL5EpSls0w2Q8/view)  

   [Previous articleCustom Eloquent Casts: Encapsulating Domain Logic Inside Model Attributes](https://www.msaied.com/public/articles/custom-eloquent-casts-encapsulating-domain-logic-inside-model-attributes) [Next articlePostgreSQL Window Functions in Laravel: Ranking, Running Totals, and Gap Detection](https://www.msaied.com/public/articles/postgresql-window-functions-in-laravel-ranking-running-totals-and-gap-detection)  

   On this page
-------------

1. [What Is Vigilance?](#what-is-vigilance)
2. [One Record Per Run, Across Every Driver](#one-record-per-run-across-every-driver)
3. [Manual Dispatch From Typed Forms](#manual-dispatch-from-typed-forms)
4. [Custom Metrics and Core Web Vitals](#custom-metrics-and-core-web-vitals)
5. [Installation and Securing the Dashboard](#installation-and-securing-the-dashboard)
6. [Beyond Queue History](#beyond-queue-history)
7. [Key Takeaways](#key-takeaways)

 ###  Have a technical challenge?

 Tell me what you’re building. I reply within two working days.

[Start a conversation](https://www.msaied.com/public#contact) 

   Related articles
-----------------

 [ ![](https://cdn.msaied.com/740/cce86edc21eddcbdd2f2454fadaf9c70.png)  · 3 min read### The Pipeline Pattern in Laravel: Custom Pipelines Beyond Middleware

5 Oct 2026 ](https://www.msaied.com/public/articles/the-pipeline-pattern-in-laravel-custom-pipelines-beyond-middleware-1) [ ![](https://cdn.msaied.com/739/2d6897fdcdcf090613f96f72a64b8a78.png)  · 4 min read### MySQL Full-Text Search in Laravel: Indexes, Relevance Scoring, and Boolean Mode

4 Oct 2026 ](https://www.msaied.com/public/articles/mysql-full-text-search-in-laravel-indexes-relevance-scoring-and-boolean-mode) [ ![](https://cdn.msaied.com/738/073696a3fefe18bec825beec5ac658f5.png)  · 4 min read### Laravel Queue Rate-Limited Middleware: Throttling Jobs Without Losing Work

4 Oct 2026 ](https://www.msaied.com/public/articles/laravel-queue-rate-limited-middleware-throttling-jobs-without-losing-work) 

  Have a technical challenge?
----------------------------

Tell me what you’re building. I reply within two working days.

 [Discuss your project ↗](https://www.msaied.com/public#contact) 

  © 2026 Mohamed Said · Built with Laravel, meant to last.Senior Backend Engineer specializing in Laravel, scalable SaaS platforms, APIs, and cloud infrastructure. I build secure, high-performance web applications that help businesses grow.

 - [Home](https://www.msaied.com/public)
- [Articles](https://www.msaied.com/public/articles)
- [Certificates](https://www.msaied.com/public/certificates)
- [GitHub](https://github.com/EG-Mohamed)
- [LinkedIn](https://www.linkedin.com/in/msaiedm/)
- [WhatsApp](https://wa.me/201094619204)
- [Email Address](mailto:hello@msaied.com)
- [My CV](https://drive.google.com/file/u/0/d/1MF20IPRJyzfy32mhEutjL5EpSls0w2Q8/view)
- [Sitemap](https://www.msaied.com/public/sitemap.xml)
