Элементы очереди
Last updated
Last updated
Переход к элементам очереди осуществляется со страницы Роботы > Очереди обмена данными. Для этого найдите в таблице очередей нужную запись и кликните на количество элементов в ее диаграмме.
Чтобы добавить элемент в очередь обмена данными:
Вверху страницы нажмите кнопку Добавить элемент.
Укажите параметры элемента:
Значение (JSON)* — значение элемента очереди. Заполняется в виде JSON. Это обязательный параметр.
Дата, до которой элемент считается недоступным — дата и время, до которого откладывается обработка элемента роботом.
Дата, после которой элемент считается недоступным — дата и время, после которого элемент будет удален из очереди.
Натуральный ключ — содержательный идентификатор элемента очереди. Проверка на уникальность ключа может отсутствовать, а может быть задана в пределах очереди или в пределах всех очередей (глобально). Это определяется настройками очереди, где создается элемент.
Приоритет — дополнительный параметр, согласно которому элементы будут сортироваться для извлечения из очереди. Используется следующий механизм сортировки:
Если приоритета нет (или он совпадает у нескольких элементов), то элементы сортируются по дате добавления.
Если приоритет указан, то для сортировки используется сначала он, а потом дата добавления. Значение 0
— это высший приоритет. Чем выше значение, тем ниже приоритет элемента. Число не может быть отрицательным.
Метаданные — словарь вида «Ключ-значение» с произвольными строковыми данными.
Сохраните изменения.
К созданному элементу впоследствии можно добавить теги — произвольные ассоциированные строки, которые помогают при поиске элемента в очереди. Для этого:
Выделите в таблице нужный элемент очереди (1).
Нажмите ставшую активной кнопку Теги элемента (2).
Вверху открывшейся страницы нажмите кнопку Добавить тег.
Текущее состояние элемента можно увидеть в таблице, в колонке Статус:
Созданный элемент автоматически получает статус New (Новый). Последующая смена статусов зависит от обработки элемента роботом.
Существуют следующие статусы элемента:
New — элемент добавлен в очередь, но еще не извлечен.
InProgress — элемент извлечен из очереди.
Success — обработка элемента завершена успешно.
Error — обработка элемента завершена с ошибкой общего вида.
Business Error — обработка элемента завершена с бизнес-ошибкой.
Присвоение финальных статусов (Success, Error, Business Error) возможно только из статуса InProgress — т.е. когда элемент извлечен роботом для дальнейшей работы.
В истории статусов в БД фиксируются только финальные статусы. Статусы New и InProgress являются логическими и вычисляются системой по косвенным признакам.
Элементы очереди можно изменять, удалять, клонировать и повторять. Для этого вверху страницы очереди есть соответствующие кнопки.
🔹 Примечание. Робот может удалять и изменять только те элементы, которые сам извлек из очереди.
При клонировании и повторении элементы снова ставятся в очередь:
Клонированный элемент — это полностью новый элемент с новым идентификатором, аналогичный оригинальному элементу. У него нулевой счетчик повторов.
Повторенный элемент — это физически тот же самый элемент, который переводится в статус «Новый». У него не меняется идентификатор. При повторе элемента сбрасывается признак его прочтения, ссылка на текущий статус и счетчик повторов.
Таким образом, клонирование создает копию элемента, а повтор — возвращает в статус New элемент, который был обработан или удален из очереди при логическом типе удаления.
По событиям работы роботов с очередью вычисляется статистика — количество элементов очереди в разных статусах и график среднего времени обработки элемента очереди роботом (разница между временем извлечения элемента и проставления ему финального статуса).