Документация 0.4 Оркестратор

Очереди

Очередь распределяет работу между роботами: каждый элемент очереди — одна заявка, строка Excel или документ. Один процесс добавляет элементы в очередь, другой берёт их по одному и обрабатывает; если роботов несколько, они работают с одной очередью одновременно и не мешают друг другу. Сбои повторяются сами, бизнес-ошибки ждут разбора оператором.

Список очередей: новые элементы, в работе, ошибки за сутки и срок
Список очередей: новые элементы, в работе, ошибки за сутки и срок

Создание очереди #

В панели откройте «Очереди» и нажмите «Создать очередь». Укажите «Имя» (например, Заявки — так очередь называют во flow) и при необходимости остальные настройки. Значения по умолчанию подходят большинству процессов; изменить их можно позже на вкладке «Настройки» очереди.

Настройка Что задаёт
«Повторов при сбое» Сколько раз повторить элемент после системной ошибки (0–10)
«Пауза перед повтором, с» Через сколько секунд элемент снова выдаётся роботу
«Срок обработки, мин» Срок (SLA) для элементов без своего срока; пусто — без срока
«Приоритет по умолчанию» Для элементов, у которых приоритет не указан
Максимум „в работе“, мин Элемент, который робот держит дольше, считается брошенным и повторяется
«Хранить завершённые, дней» Потом успешные и ошибочные элементы удаляются (7–3650)
«Без дубликатов по ссылке» Элемент с уже существующей ссылкой не добавится — повторная загрузка того же файла безопасна

Как робот работает с очередью #

Шаг процесса Что делает
orch.queueAddItem Добавляет элемент: данные заявки и ссылку (номер заявки)
orch.queueGetItem Берёт следующий новый элемент; если очередь пуста — сообщает, что элементов нет
orch.queueSetResult Отмечает элемент успешным или ошибочным и сохраняет результат

Обычный процесс-обработчик — цикл: взять элемент, обработать, записать результат, взять следующий, пока очередь не опустеет или оркестратор не попросит остановиться (orch.shouldStop). Запускать такой процесс удобно триггером очереди: задание создаётся, когда в очереди появилась работа.

Статусы элементов #

Статус Что значит
«Новый» Ждёт свободного робота
«Ждёт повтора» Был сбой — элемент будет выдан снова после паузы
«Отложен» Будет выдан не раньше указанного времени
«В работе» Робот обрабатывает элемент
«Успешно» Обработан, результат сохранён
«Ошибка» Обработан с ошибкой: бизнес-ошибка или исчерпаны повторы, нужна проверка оператором
«Брошен» Задание завершилось, не обработав элемент, и повторы закончились
«Удалён» Удалён оператором

Ошибки и повторы #

Системная ошибка (не открылось окно, пропала сеть) повторяется сама: элемент переходит в «Ждёт повтора» и после паузы выдаётся снова, пока не кончатся попытки. Бизнес-ошибка (неверные данные заявки) не повторяется — элемент сразу получает статус «Ошибка» и ждёт разбора оператором.

Элементы очереди и разбор ошибок #

Откройте очередь: вверху — сводка (новых, в работе, успешно и ошибок за 24 ч), ниже вкладки «Элементы», «Аналитика» и «Настройки».

Элементы очереди „Заявки“: фильтр по статусу, срок, попытки и ошибка
Элементы очереди „Заявки“: фильтр по статусу, срок, попытки и ошибка

На вкладке «Элементы»:

  • фильтры: «Статус», «Тип ошибки» («Бизнес-ошибка» / «Системная ошибка»), «Период», «Срок под угрозой», «Просрочены»; поиск по ссылке или id элемента;
  • щелчок по строке открывает карточку элемента: «Данные элемента», «Результат», «История попыток» со ссылками на задания;
  • отметьте элементы флажками и выберите действие: «Повторить» — вернуть ошибочные и брошенные элементы в очередь (например, после исправления данных в 1С); «Завершить вручную» — отметить обработанными, обязательно с комментарием, что сделано; «Удалить» — новые элементы, которые ещё никто не взял;
  • «Excel» и «CSV» выгружают элементы с текущими фильтрами: данные и результат — отдельными колонками.

«Пауза» останавливает выдачу элементов роботам (добавлять элементы можно, триггер очереди не срабатывает), «Продолжить» возобновляет. «Архивировать» убирает очередь из списка, история остаётся.

Загрузка из Excel #

  1. Очередь → «Загрузить из Excel».
  2. Выберите файл XLSX или CSV (UTF-8 или Windows-1251, разделитель ;, до 20 МБ). Первая строка — заголовки.
  3. Укажите «Колонка ссылки» (номер заявки), при необходимости «Колонка приоритета» и «Колонка срока». Все колонки строки попадают в данные элемента — во flow они доступны по заголовкам, например item.payload["ФИО"].
  4. «Проверить» покажет первые строки, дубликаты и ошибки — в очередь пока ничего не попадёт.
  5. «Загрузить» добавляет только верные строки без дубликатов.

Добавить один элемент вручную — «Добавить элемент»: ссылка, данные в JSON, приоритет, срок, «Не раньше».

Сроки (SLA) и прогноз #

Срок элемента — его собственный или «Срок обработки, мин» очереди от момента добавления. В списке очередей и на странице «Обзор» видно, сколько элементов под угрозой срока и сколько просрочено; встроенное правило оповещений „Просрочены элементы очереди“ сообщит о просрочке (см. Оповещения).

Вкладка «Аналитика» очереди — сколько добавлено и обработано за период, среднее время обработки и ожидания, доля в срок, «Остаток по времени» и прогноз: остаток ÷ обработано за последний час — когда очередь будет разобрана.

Пошагово работу с очередью показывает урок Очередь заявок.