PHPackages                             ramstad/queue-validator - 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. [Queues &amp; Workers](/categories/queues)
4. /
5. ramstad/queue-validator

ActiveLibrary[Queues &amp; Workers](/categories/queues)

ramstad/queue-validator
=======================

Queue validator for Laravel 5.3

0111PHP

Since May 1Pushed 9y ago1 watchersCompare

[ Source](https://github.com/jordanramstad/queue-validator)[ Packagist](https://packagist.org/packages/ramstad/queue-validator)[ RSS](/packages/ramstad-queue-validator/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Note
----

[](#note)

Looks like the following PL implements changes better then this package provides. The latest versions of 5.3 (not sure the exact version this is implemented on) will cover what this package tries to help with. [laravel/framework#16212](https://github.com/laravel/framework/pull/16212)

Queue Validator for Laravel 5.3
-------------------------------

[](#queue-validator-for-laravel-53)

Having issues with queue's in laravel 5.3? This package is made to help mitigate any damage from lost jobs.

### How it works

[](#how-it-works)

This package will add a table that will send any data from jobs that are sent to the queue. This is configurable per job class since proper verification might change from class to class. More on this later.

Once a queue is finished it will remove the record from the database. This might seem like its just using the database driver, but its more of a log. If the record is added but never removed (even after running failed jobs) it can be assumed that something went wrong.

Since this can effectively back up all data related to the queue, it can be used in a similar fashion to the failed jobs. However the reason for each job being configurable is that sometimes there is an error in the job class itself. Meaning that even if the queue tries to run it, it cannot even initialize it. This allows the raw data that was used to generate the job to be used, rather then a serialized version.

### Installation

[](#installation)

First Add the service provider to your apps config.

```
Ramstad\QueueValidator\QueueValidatorServiceProvider::class

```

Then for each Job you want to validate you need to add an extra trait.

```
use Ramstad\QueueValidator\ValidatesQueue;

```

```
class SomeJob implements ShouldQueue
{
    use ValidatesQueue;
}

```

This uses the jobs `queue()` function so if you are using that for any other reason this may not work for you.

You will also need some extra fields added to your job in its initialization.

```
class SomeJob implements ShouldQueue
{
    use ValidatesQueue;

    protected $related_class;
    protected $related_id;
    protected $related_data;

    public function __construct(SomeModelClass $model, $fields)
    {
        $this->related_class = SomeModelClass::class;
        $this->related_id = $model->id;
        $this->related_data = [
            'fields' => $fields
        ];
    }
}

```

### Usage

[](#usage)

Right now there is only one method to check the queue log table

```
php artisan queue:check

```

What this will do is output a list of jobs that have been lost, because the jobs could be still processing it check that they are older then 5 minutes by default.

To adjust the time just add a number to the end.

```
php artisan queue:check 10

```

Will check for any queue's older then 10 minutes that have not been processed.

### Todo

[](#todo)

- Add command to retry lost queues (different then failed job's, it completely redispatches the job rather then use the serialized job class).
- Create lost job notifications.
- Add extra functions to jobs to allow full verification of the job. Rather then just check that the queue ran it can also check to ensure it did what it needed too (If it creates a file, then check that it exists and such).

### Notes

[](#notes)

This is far from a perfect solution, there is likely better ways to help with queue issues and hopefully at some point this package becomes pointless. Removing the package or leaving it should not have any problematic effects on your application though.

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community5

Small or concentrated contributor base

Maturity41

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.

### Community

Maintainers

![](https://www.gravatar.com/avatar/45874d7d43089ae3bff344d0aec8b55c86cc7447e0d4bb7ea8f50f24e2fb5dca?d=identicon)[jordanramstad](/maintainers/jordanramstad)

### Embed Badge

![Health badge](/badges/ramstad-queue-validator/health.svg)

```
[![Health](https://phpackages.com/badges/ramstad-queue-validator/health.svg)](https://phpackages.com/packages/ramstad-queue-validator)
```

###  Alternatives

[league/geotools

Geo-related tools PHP 7.3+ library

1.4k5.3M26](/packages/league-geotools)[amphp/parser

A generator parser to make streaming parsers simple.

14952.8M16](/packages/amphp-parser)[amphp/serialization

Serialization tools for IPC and data storage in PHP.

13451.1M18](/packages/amphp-serialization)[enqueue/enqueue

Message Queue Library

19820.0M56](/packages/enqueue-enqueue)[deliciousbrains/wp-background-processing

WP Background Processing can be used to fire off non-blocking asynchronous requests or as a background processing tool, allowing you to queue tasks.

1.1k409.8k6](/packages/deliciousbrains-wp-background-processing)[react/async

Async utilities and fibers for ReactPHP

2238.8M170](/packages/react-async)

PHPackages © 2026

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