
Очередь роботов
При попытке запуска робота (любым способом) система может отправить этот запуск в очередь роботов.
Очередь роботов - это список неудачных запусков роботов (их не удалось начать или прервались из-за ошибки), которые система автоматически попытается выполнить еще раз в порядке попадания запусков в этот список. |
Количество запусков не равно количеству роботов. Можно запустить несколько раз одного и того же робота - при этом это будут разные запуски.
В разделе доступны причины, из-за которых запуск робота был отправлен в очередь роботов.
Интерфейс раздела Очереди роботов доступен в разделе Оркестратор:


Описание таблицы Очереди роботов
Таблица содержит список роботов, которые не запущены в данный момент.
В таблице отображаются:
- Название и версия робота, а также необходимость графической сессии для работы
- Время, когда незапущенный робот был добавлен в очередь роботов
- Способ запуска робота
- Инициатор запуска
- Машина, на учетной записи которой запущен робот
- Учетная запись, на которой запущен робот
- Количество попыток запуска робота
Описание столбцов и кнопок таблицы
Название столбца/кнопки | Описание |
---|
Столбец "Робот" | - Название робота
- Версия робота
- Индикатор, отображающий необходимость наличия графической сессии для работы робота. Если отображается
, значит, графическая сессия необходима, если - не нужна
|
Столбец "Добавлен в очередь" | Дата, когда робот был добавлен в очередь |
Столбец "Способ запуска" | Указывается вариант запуска робота Возможные значения: - Ручной запуск - робот запущен пользователем. Рядом с фразой в столбце отображается название приложения, через которое запустили робота: "Robin Studio", "Robin Player" или "Оркестратор"
- Условие запуска (Очередь ресурсов) - робот запущен по условию на основе очереди ресурсов
- Условие запуска (Расписание) - робот запущен по условию на основе расписания, которое настроено через Оркестратор
- Процесс - робот запущен в рамках выполнения процесса ЦС
- Робот - робот запущен другим роботом
|
|
Столбец "Инициатор" | Вариант записи инициатора. Зависит от способа запуска робота Возможные значения: - Вручную - отображается ФИО пользователя, который запустил робота
- Условие запуска (Очередь ресурсов) - отображается название этого условия. Название условия - это ссылка на его карточку, которая открывается в режиме "для чтения" (есть возможность сразу ее изменить). При нажатии карточка не открывается, если:
- Условие запуска не найдено в базе. Появляется предупреждение: "Ошибка при работе с условием запуска. Условие запуска не найдено"
- Условие запуска не найдено или недоступно пользователю в текущем тенанте. Появляется предупреждение: "Работа с условием запуска запрещена. Недостаточно прав для работы с условием запуска "Название условия""
- Условие запуска (Расписание) - требования аналогичны требованиям для инициатора "Условие запуска (Очередь ресурсов)"
- Процесс - отображается название этого процесса
- Робот - отображается:
- Название робота
- Версия робота. Если у робота нет версии, в таблице будет указано "0.0.0"
- Индикатор, отображающая необходимость наличия графической сессии для работы робота:
- необходима, - не нужна
|
|
Столбец "Машина" | Название и IP-адрес машины, на учетной записи которой запущен робот |
Столбец "Учётная запись" | Учетная запись машины, на которой запущен робот |
| Количество попыток запуска робота |
Кнопка  | По нажатию происходит обновление записей в таблице |
Параметры, влияющие на работу очереди роботов
Параметры, влияющие на работу очереди роботов | Наименования и обозначения параметров | Где устанавливается |
---|
Параметры очереди роботов | Текущее количество совершенных попыток перезапуска = r Время ожидания между перезапусками = t | Оба параметра настраиваются в конфигурационном файле системы |
Лимит выполняющихся запусков | Устанавливается в конфигурационном файле системы при ее развертывании. Параметр общий для всех машин, т.е. нельзя настроить разные лимиты для разных машин. При этом процессы (проекты роботов), запущенные через ROBIN Studio, не учитываются в общем количестве текущих запусков |
Максимальное количество перезапусков. Некоторые запуски могут попадать в очередь бесконечно, например, если проблема в самом роботе, и требуется его изменение через ROBIN Studio. Чтобы очередь не была забита такими запусками, после попадания запуска в очередь система попытается его повторно выполнить только установленное количество раз Когда количество выполненных попыток станет равным числу, установленному в конфигурационном файле, система удаляет этот запуск из очереди и далее его не контролирует | Устанавливается в конфигурационном файле |
Тайм-аут. Это время, которое должно пройти с момента попадания запуска в очередь (в первый раз или при неудачной попытке перезапуска), прежде чем система попытается еще раз выполнить этот запуск Пример работы этого параметра: - Робот упал в ошибку, и система отправила этот запуск в очередь
- Возникает событие, при котором система повторяет запуски в очереди
- С момента попадания запуска в очередь еще не прошло время равное значению из конфигурационного файла. Поэтому система пропускает этот запуск, оставляя его в очереди
- Количество выполненных перезапусков для этого запуска остается неизменным
- Спустя какое-то время снова возникает событие, запускающее проверку очереди
- С момента попадания запуска в очередь уже прошло время равное значению из конфигурационного файла. В этот раз система не пропускает этот запуск и пытается начать его выполнение
- Вне зависимости от результата (удалось начать запуск или нет), количество выполненных перезапусков для этого запуска увеличивается на 1
|
| Устанавливается в конфигурационном файле |
Параметры условий запуска на основе очереди ресурсов | Количество ресурсов для первого запуска = N Количество экземпляров робота = D Количество ресурсов для дополнительных запусков = M Количество экземпляров робота, которые должны выполняться в данный момент с учетом текущего количества ресурсов очереди = L Текущее количество выполняющихся экземпляров робота = n | Все параметры, кроме L и n, настраиваются в карточке условия запуска |
Добавление запуска в очередь
События, при которых система пытается еще раз повторить запуски, попавшие в очередь:
- Какой-либо выполняющийся робот завершил свою работу, т.е. на одной из учетных записей машин освободилось место для еще одного запуска
- В карточке учетной записи машины добавили или обновили учетные данные
- Одна из учетных записей машин стала активной, и при этом количество выполняющихся на ней запусков не больше установленного лимита запусков
Причины, из-за которых запуск робота будет отправлен в очередь
Запуск робота будет отправлен в очередь, если его не удалось запустить, в зависимости от условий запуска:
Вид запуска | Причина отправки робота в очередь |
---|
Запуск робота вручную Раздел "Роботы" | - Система проверяет, есть ли в очереди роботов другой запуск, который также должен произойти на выбранной УЗ:
- Система проверяет, работает ли сейчас на выбранной УЗ Ui-робот (этот же или любой другой). Если работает, система добавляет в очередь текущий запуск (Раздел "Роботы"), закрывает окно "Запустить робота" и выводит предупреждение:
Запуск робота добавлен в очередь роботов. На учетной записи уже работает UI-робот, запустить более одного UI-робота нельзя |
- Система сравнивает количество текущих запусков роботов на выбранной УЗ с допустимым лимитом. При этом в общем количество в текущих запусков не учитываются запуски дочерних роботов и запуски из Студию. Если количествово текущих запусков равно лимиту, система добавляет в очередь текущий запуск (Раздел "Роботы"), закрывает окно "Запуск робота" и выводит предупреждение:
Запуск робота добавлен в очередь роботов. Учетная запись занята |
- Если значения параметра работы с RDP в конфигурационном файле системы установлено на "False" (Роботу требуется наличие графической сессии). система добавляет в очередь роботов текущий запуск (Раздел "Роботы"), закрывает окно "Запуск робота" и выводит предупреждение:
- если система запускает RDP, т.к. УЗ неактивна:
Запуск робота добавлен в очередь роботов. Учетная запись неактивна, активация RDP-сессии запрещена |
- если система запускает RDP, т.к. на УЗ неактивна графическая сессия:
Запуск робота добавлен в очередь роботов. На учетной записи неактивна графическая сессия, активация RDP-сессии запрещена |
- Если не указаны учетные данные из карточки УЗ (Роботу требуется наличие графической сессии). Система добавляет в очередь роботов текущий запуск (Раздел "Роботы") и выводит предупреждение:
- если система запускает RDP, т.к. УЗ неактивна:
Запуск робота добавлен в очередь роботов. Учетная запись неактивна, и в ее карточке не указаны логин и пароль для запуска RDP-сессии |
- если система запускает RDP, т.к. на УЗ неактивна графическая сессия:
Запуск робота добавлен в очередь роботов. На учетной записи неактивна графическая сессия, и в ее карточке не указаны логин и пароль для запуска RDP-сессии |
|
Запуск робота согласно условию на основе очереди ресурсов (Условия запуска на основе очереди ресурсов) | - Система проверяет наличие учетных записей в группе машин, указанных в условии запуска по условиям. Если нет ни единой подходящей УЗ, то система добавляет в очередь текущий запуск (Раздел "Роботы")
- Если производится запуск робота с
, но на выбранной учетной записи же работает робот с такой же отметкой, то рассматриваемый запуск будет отправлен в очередь
|
Запуск робота для процесса ROBIN Process | - Система проверяет, есть ли в очереди роботов другой запуск, для которого также необходимо подобрать учетную запись автоматически. Если запуск есть, система добавляет в очередь текущий запуск (Раздел "Роботы") и завершает сценарий на данном шаге.
- Если параметр работы с RDP (Роботу требуется наличие графической сессии), указанного в конфигурационном файле системы = False, система добавляет в очередь текущий запуск.
Система выбирает любую неактивную УЗ, у которой в карточке указаны учетные данные, а кол-во текущих запусков меньше лимита (указан в конфигурационном файле системы); при этом не учитывает те УЗ, на которых уже была предпринята попытка выполнить текущий запуск: - Если нет, система добавляет в очередь текущий запуск. Сценарий завершается на данном шаге.
|
Завершение работы робота из-за ошибки Раздел "Выполняющиеся роботы" | Возникла ошибка уже при выполнении запущенного робота |
Системе исполнения, установленной на выбранной учетной записи машины, не удалось начать запуск (к этому моменту все вышеперечисленные проверки уже пройдены успешно и запуску не мешают) | Для выбранной учетной записи необходимо поднимать RDP-сессию, но системе не удалось ее поднять. Соответственно, начать запуск не получится, и он отправляется в очередь |
Если робот завершил свою работу успешно или был остановлен пользователем, система не добавляет такой запуск в очередь.