Cron работа для упругого поиска (Fos упругой связки)
У меня есть задание cron, которое запускает скрипт оболочки на сервере Linux Ubuntu LTS 12.0.04 каждые 2 минуты для построения эластичного поискового индекса, ниже приведен скрипт оболочки:
#! /bin/sh
echo "--------------------------------------------------------------" >> /var/log/syslog ;
echo " CRON Task: DOCOVA Elastic Indexer DV " >> /var/log/syslog ;
echo "--------------------------------------------------------------" >> /var/log/syslog ;
echo "populate index ..." >> /var/log/syslog ;
echo "start time: $(date)" >> /var/log/syslog;
/usr/bin/php /var/www/Symfony/app/console fos:elastica:populate --no-reset -v >> /var/log/syslog;
#php app/console fos:elastica:populate >> /var/log/syslog;
echo "index task completed." >> /var/log/syslog ;
echo "end time: $(date) " >> /var/log/syslog;
echo "-------------------------------------------------------------" >> /var/log/syslog ;
Когда этот сценарий выполняется через задание cron, он, похоже, выдаст вывод, как показано ниже, с большим числом "Заполнение веб-сайта / документов, 100.0% (30/30), 144 объекта / с"
Feb 28 11:58:01 ubuntu-teitr CRON[5138]: (root) CMD (/var/www/Symfony/buildDocovaIndex.sh)
--------------------------------------------------------------
CRON Task: DOCOVA Elastic Indexer DV
--------------------------------------------------------------
populate index ...
start time: Fri Feb 28 11:58:01 EST 2014
command: php /var/www/Symfony/app/console fos:elastica:populate --env=prod
Populating website/documents, 100.0% (30/30), **144 objects/s**
Refreshing website
index task completed.
end time: Fri Feb 28 11:58:01 EST 2014
-------------------------------------------------------------
Когда я запускаю скрипт вручную, он имеет меньшее количество объектов, как показано ниже:
populate index ...
start time: Fri Feb 28 12:09:08 EST 2014
command: php /var/www/Symfony/app/console fos:elastica:populate --env=prod
Populating website/documents, 100.0% (30/30), **12 objects/s**
Refreshing website
index task completed.
end time: Fri Feb 28 12:09:10 EST 2014
Может кто-нибудь подсказать, почему происходит такое противоречивое поведение, есть ли что-то, что нужно добавить в сценарий оболочки, пожалуйста, сообщите, thnx.
1 ответ
Решение
Я смог решить эту проблему, изменив путь, используя сначала cd "cd /var/www/Symfony" в расписании cron, как показано ниже:
*/2 * * * * cd /var/www/Symfony && /var/www/Symfony/buildDocovaIndex.sh