Я хочу повторно запустить задания в laravel Scheduler в случае сбоя, предположим следующее:
Kernal.php
protected function schedule(Schedule $schedule)
{
$this->generateData($schedule);
}
protected function generateData($schedule){
$schedule->command('My Command')
->monthly()
->after(function ($schedule){
$command = DB::table('commands')
->where("name","My Command")
->orderBy('id', 'desc')
->first();
if(!$command->succeeded){
echo "task not finished";
$this->generateData($schedule);
}
else{
echo "task finished";
return;
}
});
}
эта команда иногда дает сбой, после функции я проверяю, не сработала ли команда, затем я пытаюсь выполнить ее снова, но это не сработало, и я получил следующую ошибку:
[ErrorException] Отсутствует аргумент 1 для App\Console\Kernel::App\Console{закрытие}()
какие-либо предложения ?