2016-08-31 8 views
3

Hallo, ich bin mit Cron-Job mit LaravelCron-Job - Laravel - OUTPUT

Funktionsdeklaration in 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 

Log-Datei ausgegeben (cron_output einstellen. log)

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 & 

Das Echo im Funktionsplan wird angezeigt, aber die in meinem Befehl 1 und Befehl 2 sind nicht.

Ich versuchte

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

Keine Dateien 1.Melden oder 2.Melden wo erstellt weder/home/log/oder wo die Kernel.php Datei oder Ordner Command

Irgendwelche Ideen?

Danke

+0

Ihre Befehle '$ this-> info ('test')', 'this-> Fehler ('test')' usw. ausgeben Text $ verwenden sollen. – ceejayoz

+1

Scheint nichts zu ändern. –

Antwort

9

Sie die in Laravel eingebaute in task output Methode verwendet werden soll.

Zum Beispiel:

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

Danke. In meinem Fall bevorzuge ich "appendOutputTo". – JCarlos

0

Alles ist jetzt in Ordnung.

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

und in Ihrem Befehl

$this->info('test') 

Die Dateien im Stammordner meiner Anwendung erstellt werden, so dass ich sie nicht sehen!

Danke