Laravel 4.2 Indatus / dispatcher — команда не определена

я использую Indatus / диспетчер для Laravel 4.2. В основном это Cron Task Scheduler.

Я пытаюсь запустить задание Cron каждую минуту, и я получаю эту ошибку на работающем сервере (но она отлично работает на моей локальной машине). Вот что я сделал:

<?php

use Indatus\Dispatcher\Scheduling\ScheduledCommand;
use Indatus\Dispatcher\Scheduling\Schedulable;
use Indatus\Dispatcher\Drivers\Cron\Scheduler;
use Symfony\Component\Console\Input\InputOption;
use Symfony\Component\Console\Input\InputArgument;

class TestCommand extends ScheduledCommand {

/**
* The console command name.
*
* @var string
*/
protected $name = 'command:check';

/**
* The console command description.
*
* @var string
*/
protected $description = 'Check if the meberships are verified.';

/**
* Create a new command instance.
*
* @return void
*/
public function __construct()
{
parent::__construct();
}

/**
* When a command should run
*
* @param Scheduler $scheduler
* @return \Indatus\Dispatcher\Scheduling\Schedulable
*/
public function schedule(Schedulable $scheduler)
{
return $scheduler->everyMinutes(1);
}

/**
* Execute the console command.
*
* @return mixed
*/
public function fire()
{
Log::info('I was here @ ' . date('H:i:s'));
}

/**
* Get the console command arguments.
*
* @return array
*/
protected function getArguments()
{
return array(
// array('example', InputArgument::REQUIRED, 'An example argument.'),
);
}

/**
* Get the console command options.
*
* @return array
*/
protected function getOptions()
{
return array(
// array('example', null, InputOption::VALUE_OPTIONAL, 'An example option.', null),
);
}

}

Так что, в основном, я просто пишу строку в моем файле журнала (т.е. Хранение / laravel.log) каждый раз, когда запускается планировщик. Когда я делаю php artisan scheduled:run на моей локальной машине, это пишет новую строку в моем файле журнала.

Теперь я загрузил код на свой сервер и создал задание Cron как:

[Http://awesomescreenshot.com/09a64zii1f](http://awesomescreenshot.com/09a64zii1f)

Задание Cron выполняется каждую минуту, как и ожидалось, и файл журнала также обновляется каждую минуту, но вместо сообщения, которое я записываю в файл журнала, его запись приводит к следующей ошибке каждую минуту:

[2016-09-24 09:20:01] production.ERROR: исключение «InvalidArgumentException» с сообщением «Команда« команда: проверка »не определена.

Вы имели в виду это?

команда: make ‘в /home/mhjamil/public_html/l4-cron/test/vendor/symfony/console/Symfony/Component/Console/Application.php:564

Stack trace:
#0 /home/mhjamil/public_html/l4-cron/test/vendor/symfony/console/Symfony/Component/Console/Application.php(190): Symfony\Component\Console\Application->find('command:check')
#1 /home/mhjamil/public_html/l4-cron/test/vendor/symfony/console/Symfony/Component/Console/Application.php(124): Symfony\Component\Console\Application->doRun(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#2 /home/mhjamil/public_html/l4-cron/test/artisan(58): Symfony\Component\Console\Application->run()
#3 {main} [] []`

И, кстати, я зарегистрировал команду в приложение / старт / artisan.php как

Artisan::add(new TestCommand);

Также команда php artisan command:check работает успешно на моей локальной машине, но когда я загружаю его на свой сервер, он говорит Команда «команда: проверка» не определена.


И еще одна вещь, на моем сервере я добавил маршрут и сделал Artican::call("command:check");, Теперь, когда я перезагружаю эту страницу, она успешно записывает запись в файл журнала. Но это дает ошибку при выполнении cron. Я предполагаю, что проблема в некоторой степени связана с заданием cron или настройками сервера.


Я попытался изменить команду cron на:

/usr/bin/php /home/mhjamil/public_html/l4-cron/test/artisan command:check 1>> /dev/null 2>&1

ранее я использовал schaduled:run но все же проблема 🙁

0

Решение

Задача ещё не решена.

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

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

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