2016-08-31 6 views
3

Привет Я бегу хрон с LaravelCRON JOB - Laravel - ВЫВОД

Объявление функции в Laravel

protected function schedule(Schedule $schedule) 
{ 
    echo "test CRON JOB\n"; 
    $file1 = '1.log'; 
    $file2 = '2.log'; 
    $schedule->command('command1')->sendOutputTo($file1); 
    $schedule->command('command2')->sendOutputTo($file2); 

} 

CRON JOB - Установка

pathToArtisan schedule:run 2>&1 >> /home/log/cron_output.log 

выходного файла журнала (cron_output. лог)

test CRON JOB 
Running scheduled command: '/opt/alt/php55/usr/bin/php' 'artisan'command1 > '1.log' 2>&1 & 
Running scheduled command: '/opt/alt/php55/usr/bin/php' 'artisan' command2 > '2.log' 2>&1 & 

Отображается эхо в расписании функций, но внутри моей команды 1 и команды 2 нет.

Я попытался

echo "test"; $this->info('test'); 

Нет файлов 1.log или 2.log, где создано ни/дом/Журнал/или где файл Kernel.php является или Command папка

Есть идеи?

Спасибо

+0

Ваши команды должны использовать '$ this-> информация ('тест')', '$ this-> ошибки ('тест')' и т.д., для вывода текста. – ceejayoz

+1

Кажется ничего не меняет. –

ответ

9

Вы должны использовать встроенный task output метода в Laravel.

Например:

$file = 'command1_output.log'; 
$schedule->command('command1') 
     ->sendOutputTo($file); 
+1

Спасибо. В моем случае я предпочитаю 'appendOutputTo'. – JCarlos

0

Теперь все в порядке.

$schedule->command('command1') 
    ->sendOutputTo($file); 

и внутри команды

$this->info('test') 

Файлы создаются в корневой папке моего приложения, так что я их не видел!

Спасибо