Очередь 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 минут!
Я не могу думать ни о чем другом, чтобы проверить, где могут быть кэшированы рабочие места.