Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 5 Следующий »

Очередь роботов

При попытке запуска робота (любым способом) система может отправить этот запуск в очередь роботов.   

Очередь роботов - это список неудачных запусков роботов (их не удалось начать или прервались из-за ошибки), которые система автоматически попытается выполнить еще раз в порядке попадания запусков в этот список.

Количество запусков не равно количеству роботов. Можно запустить несколько раз одного и того же робота - при этом это будут разные запуски.

В разделе доступны причины, из-за которых запуск робота был отправлен в очередь роботов.

Интерфейс раздела Очереди роботов доступен в разделе Оркестратор:

Описание таблицы Очереди роботов

Таблица содержит список роботов, которые не запущены в данный момент.

В таблице отображаются: 

  • Название и версия робота, а также необходимость графической сессии для работы
  • Время, когда незапущенный робот был добавлен в очередь роботов
  • Способ запуска робота
  • Инициатор запуска
  • Машина, на учетной записи которой запущен робот
  • Учетная запись, на которой запущен робот
  • Количество попыток запуска робота

Описание столбцов и кнопок таблицы

Название столбца/кнопки

Описание

Столбец "Робот"
  • Название робота
  • Версия робота
  • Индикатор, отображающий необходимость наличия графической сессии для работы робота. Если отображается , значит, графическая сессия необходима, если  - не нужна
Столбец "Добавлен в очередь"Дата, когда робот был добавлен в очередь
Столбец "Способ запуска"

Указывается вариант запуска робота

Возможные значения:

  • Ручной запуск - робот запущен пользователем. Рядом с фразой в столбце отображается название приложения, через которое запустили робота: "Robin Studio", "Robin Player" или "Оркестратор"
  • Условие запуска (Очередь ресурсов) - робот запущен по условию на основе очереди ресурсов
  • Условие запуска (Расписание) - робот запущен по условию на основе расписания, которое настроено через Оркестратор
  • Процесс - робот запущен в рамках выполнения процесса ЦС
  • Робот - робот запущен другим роботом 


Столбец "Инициатор"

Вариант записи инициатора. Зависит от способа запуска робота

Возможные значения:

  • Вручную - отображается ФИО пользователя, который запустил робота
  • Условие запуска (Очередь ресурсов) - отображается название этого условия. Название условия - это ссылка на его карточку, которая открывается в режиме "для чтения" (есть возможность сразу ее изменить). При нажатии карточка не открывается, если:
    • Условие запуска не найдено в базе. Появляется предупреждение: "Ошибка при работе с условием запуска. Условие запуска не найдено"
    • Условие запуска не найдено или недоступно пользователю в текущем тенанте. Появляется предупреждение: "Работа с условием запуска запрещена. Недостаточно прав для работы с условием запуска "Название условия""
  • Условие запуска (Расписание) - требования аналогичны требованиям для инициатора "Условие запуска (Очередь ресурсов)"
  • Процесс - отображается название этого процесса
  • Робот - отображается:
    • Название робота
    • Версия робота. Если у робота нет версии, в таблице будет указано "0.0.0"
    • Индикатор, отображающая необходимость наличия графической сессии для работы робота: - необходима, - не нужна


Столбец "Машина"Название и IP-адрес машины, на учетной записи которой запущен робот
Столбец "Учётная запись"Учетная запись машины, на которой запущен робот

Попытки

Количество попыток запуска робота

Кнопка image-2024-5-29_12-44-37.png

По нажатию происходит обновление записей в таблице

Параметры, влияющие на работу очереди роботов

Параметры, влияющие на работу очереди роботовНаименования и обозначения параметровГде устанавливается
Параметры очереди роботов
 

Текущее количество совершенных попыток перезапуска = r

Время ожидания между перезапусками = t

Оба параметра настраиваются в конфигурационном файле системы

Лимит выполняющихся запусков

Устанавливается в конфигурационном файле системы при ее развертывании. Параметр общий для всех машин, т.е. нельзя настроить разные лимиты для разных машин. При этом процессы (проекты роботов), запущенные через ROBIN Studio, не учитываются в общем количестве текущих запусков

Максимальное количество перезапусков. Некоторые запуски могут попадать в очередь бесконечно, например, если проблема в самом роботе, и требуется его изменение через ROBIN Studio. Чтобы очередь не была забита такими запусками, после попадания запуска в очередь система попытается его повторно выполнить только установленное количество раз

Когда количество выполненных попыток станет равным числу, установленному в конфигурационном файле, система удаляет этот запуск из очереди и далее его не контролирует

Устанавливается в конфигурационном файле

Тайм-аут. Это время, которое должно пройти с момента попадания запуска в очередь (в первый раз или при неудачной попытке перезапуска), прежде чем система попытается еще раз выполнить этот запуск

Пример работы этого параметра:

  1. Робот упал в ошибку, и система отправила этот запуск в очередь
  2. Возникает событие, при котором система повторяет запуски в очереди
  3. С момента попадания запуска в очередь еще не прошло время равное значению из конфигурационного файла. Поэтому система пропускает этот запуск, оставляя его в очереди
  4. Количество выполненных перезапусков для этого запуска остается неизменным
  5. Спустя какое-то время снова возникает событие, запускающее проверку очереди
  6. С момента попадания запуска в очередь уже прошло время равное значению из конфигурационного файла. В этот раз система не пропускает этот запуск и пытается начать его выполнение
  7. Вне зависимости от результата (удалось начать запуск или нет), количество выполненных перезапусков для этого запуска увеличивается на 1


Устанавливается в конфигурационном файле
Параметры условий запуска на основе очереди ресурсов

Количество ресурсов для первого запуска = N

Количество экземпляров робота = D

Количество ресурсов для дополнительных запусков = M

Количество экземпляров робота, которые должны выполняться в данный момент с учетом текущего количества ресурсов очереди = L

Текущее количество выполняющихся экземпляров робота = n

Все параметры, кроме L и n, настраиваются в карточке условия запуска

Добавление запуска в очередь

События, при которых система пытается еще раз повторить запуски, попавшие в очередь:

  • Какой-либо выполняющийся робот завершил свою работу, т.е. на одной из учетных записей машин освободилось место для еще одного запуска
  • В карточке учетной записи машины добавили или обновили учетные данные
  • Одна из учетных записей машин стала активной, и при этом количество выполняющихся на ней запусков не больше установленного лимита запусков

Причины, из-за которых запуск робота будет отправлен в очередь

Запуск робота будет отправлен в очередь, если его не удалось запустить, в зависимости от условий запуска:

Вид запускаПричина отправки робота в очередь
Запуск робота вручную Раздел "Robots"
  • Система проверяет, есть ли в очереди роботов другой запуск, который также должен произойти на выбранной УЗ:
    • Если запуск есть, система добавляет в очередь текущий запуск (Раздел "Robots"), закрывает окно "Запустить робота" и выводит предупреждение: 

      Запуск робота добавлен в очередь роботов. Учетная запись занята
  • Система проверяет, работает ли сейчас на выбранной УЗ Ui-робот (этот же или любой другой). Если работает, система добавляет в очередь текущий запуск (Раздел "Robots"), закрывает окно "Запустить робота" и выводит предупреждение:
    Запуск робота добавлен в очередь роботов. На учетной записи уже работает UI-робот, запустить более одного UI-робота нельзя
  • Система сравнивает кол-во текущих запусков роботов на выбранной УЗ с допустимым лимитом. При этом в общем количествово текущих запусков не учитываются запуски дочерних роботов и запуски из Студию. Если количествово текущих запусков равно лимиту, система добавляет в очередь текущий запуск (Раздел "Robots"), закрывает окно "Запуск робота" и выводит предупреждение:
    Запуск робота добавлен в очередь роботов. Учетная запись занята
  • Если значения параметра работы с RDP в конфигурационном файле системы установлено на "False" (Роботу требуется наличие графической сессии). система добавляет в очередь роботов текущий запуск (Раздел "Robots"), закрывает окно "Запуск робота" и выводит предупреждение:
    • если система запускает RDP, т.к. УЗ неактивна:
      Запуск робота добавлен в очередь роботов. Учетная запись неактивна, активация RDP-сессии запрещена
    • если система запускает RDP, т.к. на УЗ неактивна графическая сессия:
      Запуск робота добавлен в очередь роботов. На учетной записи неактивна графическая сессия, активация RDP-сессии запрещена
  • Если не указаны учетные данные из карточки УЗ (Роботу требуется наличие графической сессии). Система добавляет в очередь роботов текущий запуск (Раздел "Robots") и выводит предупреждение:
    • если система запускает RDP, т.к. УЗ неактивна:
      Запуск робота добавлен в очередь роботов. Учетная запись неактивна, и в ее карточке не указаны логин и пароль для запуска RDP-сессии
    • если система запускает RDP, т.к. на УЗ неактивна графическая сессия:
      Запуск робота добавлен в очередь роботов. На учетной записи неактивна графическая сессия, и в ее карточке не указаны логин и пароль для запуска RDP-сессии
Запуск робота согласно условию на основе очереди ресурсов (Launch conditions based on resource queue)
  • Система проверяет наличие учетных записей в группе машин, указанны в условии запуска по условиям. Если нет ни одиной подходящей УЗ, то система добавляет в очередь текущий запуск (Раздел "Robots")
  • Если производится запуск робота с, но на выбранной учетной записи же работает робот с такой же отметкой, то рассматриваемый запуск будет отправлен в очередь

Запуск робота для процесса ROBIN Process

  1. Система проверяет, есть ли в очереди роботов другой запуск, для которого также необходимо подобрать учетную запись автоматически. Если запуск есть, система добавляет в очередь текущий запуск (Раздел "Robots") и завершает сценарий на данном шаге.
  2. Если параметр работы с RDP (Роботу требуется наличие графической сессии), указанного в конфигурационном файле системы = False, система добавляет в очередь текущий запуск.
  3. Система выбирает любую неактивную УЗ, у которой в карточке указаны учетные данные, а кол-во текущих запусков меньше лимита (указан в конфигурационном файле системы); при этом не учитывает те УЗ, на которых уже была предпринята попытка выполнить текущий запуск:

    1. Если нет, система добавляет в очередь текущий запуск. Сценарий завершается на данном шаге.
Завершение работы робота из-за ошибки Раздел "Running robots"

Возникла ошибка уже при выполнении запущенного робота

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

Для выбранной учетной записи необходимо поднимать RDP-сессию, но системе не удалось ее поднять. Соответственно, начать запуск не получится, и он отправляется в очередь

Если робот завершил свою работу успешно или был остановлен пользователем, система не добавляет такой запуск в очередь.

  • Нет меток