Планирование задач Laravel 5 запускает задачу каждую минуту независимо от вызванного метода

Я озадачен странным поведением Laravel 5. Я добавил это к \app\Console\Kernel.php:

protected function schedule(Schedule $schedule)
{
//$schedule->command('inspire')->hourly();
$schedule->command(Utilsclass::log_line("CROM JOB EXECUTED @ ".date('l jS \of F Y h:i:s A')))->monthly();
}

и я ожидаю увидеть активность в моем журнале один раз в месяц, но вот что я получаю в log.txt:

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:32:01

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:33:01

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:34:01

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:35:01

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:36:01

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:37:01

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:38:02

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:39:01

CROM JOB ВЫПОЛНЕН @ вторник, 29 декабря 2015 г., 15:40:01

так каждую минуту, независимо от используемого метода. Фактически используя daily() или же hourly() не имеет значения вообще.

Помимо того, что я новичок в Laravel, я не знаю, как выследить проблему, которая кажется мне чем-то вроде ошибки …

Любая помощь?

2

Решение

Вы должны использовать closure для этого, чтобы выполнять этот код ежедневно, а не для каждого выполнения cron:

$schedule->call(function () {
Utilsclass::log_line("CROM JOB EXECUTED @ ".date('l jS \of F Y h:i:s A'));
})->daily();
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]