Sherpa Orchestrator: ответы на часто задаваемые вопросы
Last updated
Last updated
Вопрос: что делать, если есть проблема с нехваткой памяти для скрипта? (пример на скриншоте)
Ответ:
1. В случае использования версии с Docker: Нужно в backend\config\php.ini
указать memory_limit = 2048M
или выше. Затем необходимо перезапустить контейнер.
2. В случае использования Local версии: Нужно в файле php.ini
(может находится по разным адресам в зависимости от используемой ОС) указать memory_limit = 2048M
или выше. Затем необходимо перезапустить nginx.
Вопрос: как подключить phpMyAdmin
(в версии с Docker) ?
Ответ:
1. Скачайте архив и скопируйте его на сервер в /opt.
https://sherparpa.ru/downloads/private/SherpaRPAOrcDocker/phpmyadmin.tar.gz
2. Загрузите образ в докер.
cd /opt/SherpaOrchestrator
docker load —input phpmyadmin.tar.gz
cd /opt/SherpaOrchestrator
sudo wget -O phpmyadmin.tar.gz
https://sherparpa.ru/downloads/private/SherpaRPAOrcDocker/phpmyadmin.tar.gz
docker load —input phpmyadmin.tar.gz
3. Раскомментируйте все строки касательно phpmyadmin
в «docker-compose.yml
».
4. Перезапустите контейнеры:
cd /opt/SherpaOrchestrator
sudo ./run.sh
5. Зайдите по адресу http://ваш_адрес_оркестратора:8081
6. Для авторизации укажите:
server: orchestrator-db
username: root
Вопрос: как перезапустить контейнер?
Ответ: Контейнеры не рекомендуется перезапускать вручную через команду Docker.
Правильным методом перезапуска для докер-версии является скрипт run.sh
(запуск из директории установки по умолчанию /opt/SherpaOrchestrator
). То есть, в консоли необходимо перейти в директорию установки (команда cd
адрес_папки ) и выполнить команду sudo ./run.sh
(иногда sudo
использовать не нужно).
Вопрос: что делать, если есть проблемы со скоростью обработки при большом количестве одновременно работающих роботов?
Ответ: в случае, если много одновременно работающих роботов (если есть проблемы с скоростью запросов), то в конфиге
backend/config/php-fpm.conf
параметр pm
должен быть выставлен static
(в новых сборках Оркестратора он выставлен так по умолчанию).
Чтобы Оркестратор быстрее обрабатывал множество запросов (heartbeat) от большого числа одновременно работающих Роботов, параметр pm.max_children
можно увеличить (по умолчанию стоит 8).
При внесении любых изменений в конфиг, необходимо перезапустить контейнер.
Если у Вас локальная установка без Docker, то необходимо найти у себя путь к php-fpm.conf
, внести изменения, указанные выше и перезапустить php-fpm
.
Вопрос: подскажите пожалуйста входной параметр возможно назначать в оркестраторе при создании работы или при определении триггера?
Ответ: в Оркестраторе создайте задачу в какой-нибудь очереди и в параметры этой задачи запишите те параметры, которые хотите передавать. Затем в Триггере Оркестратора на вкладке “Очередь” выберите пункт "Назначить задачу по умолчанию создаваемым работам" и выберите ту самую задачу. После этого в сценарии робота используйте блок "Получить задачу по умолчанию" из палитры Оркестратор, чтобы получить Ваши параметры.
Вопрос: что делать, если из Оркестратора пропали Роботы (или другие объекты)?
Ответ: возможно они были по ошибке удалены. Большинство записей в базе данных удаляются через soft delete, то есть им в колонке is_deleted просто проставляется 1, а запись при этом остаётся в базе. Если что-то пропало - можно вернуть вручную через базу, найдя необходимый объект и поменяв is_deleted на 0.
Вопрос: подскажите как увеличить время сессии в веб-версии Оркестратора? Сейчас, как я понял, 15 мин по умолчанию?
Ответ: можно поднять до 30 минут, для этого внесите в конфиг backend/config/php.ini
следующие параметры:
session.gc_maxlifetime = 1800
session.cookie_lifetime = 1800
После – необходимо перезапустить контейнеры.
Можно установить и большие значения (в секундах), но на уровне скрипта реализовано прекращение сессии при бездействии более 30 минут. Данный способ актуален для версии с Docker. Для версии без Docker, соответственно, надо вносить изменения в те же параметры (но путь к конфигу будет другим и будет зависеть от используемой ОС). И в таком случае после внесения изменений надо будет перезапустить веб-сервер.