2016-09-22 3 views
2

を実行しません。しかし、Envoyerで動作するようにサーバーを設定した直後に、スケジューラーは突然最初に実行されることはありません。Laravelスケジューラコマンドは、決して、私は2つのコマンドを実行するために1分ごとに実行するようにスケジュールを設定した2回目

つまり、スケジュールがForgeの1分ごとに設定されている場合、1回実行されてからログが追加されることはありません。

Envoyerハートビートを追加して10分ごとに追跡しましたが、最初の実行後であってもthenPing()メソッドがEnvoyerに通知するようにはなりません。

私はcronエントリを削除して再作成し、強制的にそのエントリを実行することができます。

これらのすべては、独自のcronジョブを与えられれば正常に動作します。

/storage/framework/schedule-*のロックファイルをチェックすると、ブロックする可能性のあるファイルはありません。

問題を示すLaravelログファイルには何もありません。

アイデア?

答えて

1

これはLaravelスケジューラが正しく実行を許可php /home/forge/default/current/artisan schedule:run

php /home/forge/default/artisan schedule:runからcronジョブを変更することでこれを解決しました。しかし、方法thenPingpingBeforeはまだ決して実際に仕事をしません。これを修正するには

は、私は手動で各コマンドの後に次の行を追加する必要がありました:

(new Client())->get('http://beats.envoyer.io/heartbeat/SoMeRaNdOmHaSh'); 

ビルトインのpingメソッドが動作しないのはなぜ謎です。理由を知りたいです。

関連する問題