PHPackages                             kreatif/laravel-queue-watchdog - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Logging &amp; Monitoring](/categories/logging)
4. /
5. kreatif/laravel-queue-watchdog

ActiveLibrary[Logging &amp; Monitoring](/categories/logging)

kreatif/laravel-queue-watchdog
==============================

A Laravel package to monitor queue failures and send notifications based on thresholds and time windows.

v1.1.4(5mo ago)021MITPHPPHP ^8.2

Since Feb 2Pushed 5mo agoCompare

[ Source](https://github.com/kreatifIT/laravel-queue-watchdog)[ Packagist](https://packagist.org/packages/kreatif/laravel-queue-watchdog)[ Docs](https://github.com/kreatifIT/laravel-queue-watchdog)[ RSS](/packages/kreatif-laravel-queue-watchdog/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (6)Versions (7)Used By (0)

Laravel Queue Watchdog
======================

[](#laravel-queue-watchdog)

A Laravel package to monitor queue failures and send notifications based on thresholds and time windows.

Features
--------

[](#features)

- **Digest Mode (Time-Bucket)**: Instead of immediate alerts, it collects all failures within a time window and sends a summary report.
- **Threshold Monitoring**: Alert only when X jobs fail within Y minutes.
- **Queue Filtering**: Precisely control which queues to monitor (supports wildcards and exclusions).
- **Aggregation Strategies**:
    - `all`: Count all failures.
    - `unique_jobs`: Count failures per job class.
    - `unique_exceptions`: Count failures per exception type.
- **Cooldown**: Prevent notification spam with a configurable cooldown period after a report is sent.
- **Multi-channel Notifications**: Support for Mail, Slack, and any other Laravel notification channel.

Installation
------------

[](#installation)

```
composer require kreatif/laravel-queue-watchdog
```

*Note: If you plan to use the Slack notification channel, you must also install the official Laravel Slack notification package:*

```
composer require laravel/slack-notification-channel
```

Configuration
-------------

[](#configuration)

Publish the config file:

```
php artisan vendor:publish --tag="laravel-queue-watchdog-config"
```

or

```
php artisan vendor:publish --tag="queue-watchdog-config"
```

The configuration allows you to define thresholds, aggregation strategies, and notification channels.

### How it works: Digest Mode

[](#how-it-works-digest-mode)

The watchdog uses a **Time-Bucket** model to ensure no failure information is lost:

1. The first failure on a monitored queue starts a "Collection Window" (defined by `window_minutes`).
2. All subsequent failures during this window are collected in a cache-based bucket.
3. At the end of the window, an analysis job runs.
4. If the total count of failures is &gt;= `failure_limit`, a summary notification is sent via your configured channels.
5. A `cooldown_minutes` period then starts, during which no new collection windows will begin.

#### Configuration Tips:

[](#configuration-tips)

- **Real-time Alerts**: Set `window_minutes` to `0` or `false` and `failure_limit` to `1` to receive a notification immediately for every failure.
- **Strict Digest**: Set `window_minutes` to `10` and `failure_limit` to `1` to get a summary of all failures every 10 minutes.
- **Threshold Digest**: Set `window_minutes` to `5` and `failure_limit` to `10` to only be notified if at least 10 jobs fail within a 5-minute burst.

### Queue Filtering

[](#queue-filtering)

You can precisely control which queues are monitored using the `queues` array in the config file. It supports wildcards and exclusions:

- `*`: Monitor all queues.
- `default`: Monitor only the "default" queue.
- `!ignored`: Exclude the "ignored" queue.
- `sync*`: Monitor any queue starting with "sync" (e.g., `sync-users`, `sync-orders`).

Example:

```
'queues' => ['*', '!update', 'report', 'sync*'],
```

Usage
-----

[](#usage)

The package automatically listens for the `Illuminate\Queue\Events\JobFailed` event and tracks failures in your cache. No additional setup is required beyond configuration.

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance70

Regular maintenance activity

Popularity6

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~2 days

Total

6

Last Release

174d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/c58db6e153a58764dfc820c0a9d33b0a64a26b62eb8c0051912a20edb63b6499?d=identicon)[kreatif](/maintainers/kreatif)

---

Tags

laravelmonitoringqueuealertwatchdogkreatif

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/kreatif-laravel-queue-watchdog/health.svg)

```
[![Health](https://phpackages.com/badges/kreatif-laravel-queue-watchdog/health.svg)](https://phpackages.com/packages/kreatif-laravel-queue-watchdog)
```

###  Alternatives

[spatie/laravel-health

Monitor the health of a Laravel application

88212.7M185](/packages/spatie-laravel-health)[harris21/laravel-fuse

Circuit breaker for Laravel queue jobs. Protect your workers from cascading failures.

46273.9k](/packages/harris21-laravel-fuse)[defstudio/telegraph

A laravel facade to interact with Telegram Bots

818355.4k3](/packages/defstudio-telegraph)[keepsuit/laravel-opentelemetry

OpenTelemetry integration for laravel

173666.7k1](/packages/keepsuit-laravel-opentelemetry)[psalm/plugin-laravel

Psalm plugin for Laravel

3345.4M354](/packages/psalm-plugin-laravel)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5226.7k](/packages/simplestats-io-laravel-client)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
