Очередь Laravel не читает обновления из Kernel.php

Фон

У меня есть проект laravel, который работает нормально уже несколько недель и выполняет запланированные задания каждые 5 минут без проблем. Я вижу, как эта работа запускается в Horizon, и если я использую php artisan queue:work --tries=3 Я также вижу работу. К вашему сведению - я использую Redis для драйвера очереди.

Работающий Kernel.php

namespace App\Console;

use Artisan;
use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
use App\Jobs\FetchMajorProblems;

class Kernel extends ConsoleKernel
{
    /**
     * The Artisan commands provided by your application.
     *
     * @var array
     */
    protected $commands = [
        //
        'App\Console\Commands\MassAssignRole',
        'App\Console\Commands\ClearLogs',
    ];

    /**
     * Define the application's command schedule.
     *
     * @param  \Illuminate\Console\Scheduling\Schedule  $schedule
     * @return void
     */
    protected function schedule(Schedule $schedule)
    {

       $schedule->command('horizon:snapshot')->everyFiveMinutes();

       $schedule->job(new FetchMajorProblems)->everyFiveMinutes();

    }

    /**
     * Register the Closure based commands for the application.
     *
     * @return void
     */
    protected function commands()
    {
        require base_path('routes/console.php');
    }
}

Проблема

Теперь я создал новую работу точно так же, как я сделал для FetchMajorProblems, Я также добавил это в файл Kernel.php с помощью следующих 2 изменений;

  • добавленной use App\Jobs\FetchMajorIncidents; наверх
  • добавленной $schedule->job(new FetchMajorIncidents)->everyFiveMinutes(); к функции графика.

Тем не менее, новый FetchMajorIncidents работа не называется.

Что я пробовал

Я пробовал следующее:

  • Перезапущенный горизонт
  • Перезапустил сервер
  • Очистил кеш php
  • Очистил конфиг php
  • Очистил php просмотров
  • Запустил дамп-автозагрузку Composer

В качестве теста я также пытался удалить текущую работу, комментируя $schedule->job(new FetchMajorProblems)->everyFiveMinutes();, Проблема в том, что, хотя это закомментировано, работа все еще выполняется каждые 5 минут!

Я не могу думать ни о чем другом, чтобы проверить, где могут быть кэшированы рабочие места.

0 ответов

Другие вопросы по тегам