Перейти к содержанию

v.5.206.0#

Изменения

  • Внутренняя библиотека лицензирования обновлена до версии 1.17.0.

  • Задачи сборки мусора (Garbage collection) для обобщенных событий теперь могут удалять биометрические образцы (БО) из сервиса Image Store (так же, как это уже работает для обычных событий и лиц).

    В запрос "create gc task" добавлены параметры:

    • remove_samples (по умолчанию false) — удалять ли БО вместе с обобщенными событиями;
    • targets — список путей к пользовательским полям обобщенного события, в которых хранятся ссылки на изображения для удаления. Параметр targets учитывается только при remove_samples = true.

    Удаленные события сохраняются в секции events результата задачи, а записи о неудачных попытках удаления БО — в секции sample_removal_errors. Ошибка удаления БО не приводит к неудачному завершению задачи.

    Примечание. Удаление БО выполняется только при включённом сервисе Image Store (в настройке ADDITIONAL_SERVICES_USAGE).

  • В запросы "get streams", "count streams", "get groups" и "count groups" добавлен query-параметр analytics_names.

    Параметр принимает список имён аналитик через запятую, например: analytics_names=analytic1,analytic2. В результат попадают только те потоки или группы, которые имеют все указанные аналитики. Это позволяет, например, найти все камеры с нужной аналитикой, даже если она была назначена через группу потоков.

    Для запросов по потокам параметр analytics_names работает совместно с параметром enriched, который определяет, какие настройки потока участвуют в проверке: только настройки самого потока или они же вместе с настройками групп (если поток привязан к группе). От этого зависит набор аналитик для фильтрации:

    • enriched=1 (по умолчанию) — все аналитики потока, включая назначенные группам;
    • enriched=0 — только аналитики, указанные при создании потока.

    Параметр enriched использовался и ранее, а в запрос "count streams" добавлен вместе с analytics_names.

  • Из видеоаналитики трекинга людей удалены таргеты, результаты которых не используются при формировании событий: overview, warp_quality, emotions, mask, glasses, eyes, gaze, mouth, aggregated_liveness, aggregated_deepfake, aggregated_face_thumbnail, aggregated_face_basic_attributes, aggregated_face_descriptor, aggregated_body_thumbnail, aggregated_body_attributes, aggregated_body_descriptor.

    Ранее созданные потоки остаются работоспособными: удалённые таргеты заменяются на базовые (face_detection для лица, body_detection для тела), поэтому трекинг тех же объектов продолжается. Также параметр image_retain_policy больше не используется.

    Примечание. Видеоаналитика трекинга людей, выполняемая запросом "video analytics", не изменилась.

Исправленные ошибки

  • Исправлено поведение, которое приводило к внутренней ошибке сервера ("Internal server error", код состояния 500) при создании лица с привязкой к спискам, если один из этих списков удалялся в этот же момент другим запросом.

    Теперь в этом случае возвращается ошибка с кодом состояния 400 (список не найден).

  • Исправлено снижение производительности при обработке потоков с заданным числом кадров в секунду (параметр data.fps).

  • В документации API сервиса Video Agent примеры ошибок для запросов "create stream", "get stream", "get task", "video analytics", "get service configuration" и "get OpenAPI documentation" приведены в соответствие с фактическими ответами сервиса.

  • Исправлено поведение, которое приводило к ошибке с кодом "42027" и сообщением "Job with name ... already exists" при выполнении запроса "put workflow".

    Теперь при обновлении потока задач ("workflows") его задачи ("jobs") останавливаются и пересоздаются, как и ожидается.

    Важно! Откат миграции базы данных на предыдущую версию удаляет старые версии задач с одинаковым именем: для каждого имени сохраняется только задача последней версии.

    Также исправлена ошибка, из-за которой после запроса "put workflow" задачи предыдущей версии "workflow" возвращали в поле imported_image образ новой версии.

  • Исправлена ошибка, из-за которой очистка неактивных lambda при недоступности Prometheus могла отключать используемые lambda и задачи (jobs).

    Ранее при неудачном запросе метрики last_activity в лог записывалась только сама ошибка, а очистка продолжала работать по устаревшим значениям параметра last_usage (время последней активности lambda). Если Prometheus был недоступен дольше интервала неактивности lambda из LUNA_LAMBDA_INACTIVE_LAMBDA_CLEAR_INTERVAL (или LUNA_LAMBDA_INACTIVE_JOB_CLEAR_INTERVAL), отключались все lambda, не являющиеся бессрочными (non-eternal), или все задачи (jobs).

    Теперь при неудачном обновлении last_usage очистка на этом этапе пропускается, а в лог записывается предупреждение. Как только Prometheus снова становится доступен, очистка работает как прежде.

  • Исправлена опечатка в названии параметра, ограничивающего количество одновременно выполняемых задач развёртывания (deployment jobs) для пространства имён (namespace).

    В группе параметров LAMBDA_DEPLOYMENT_SETTINGS параметр parralel_job_limit переименован в parallel_job_limit.

    Ранее сохранённые значения этого параметра переносятся миграцией настроек, поэтому заданные ограничения продолжают действовать без изменений.

    Важно! Файлы конфигурации, в которых этот параметр задан в группе LAMBDA_DEPLOYMENT_SETTINGS, необходимо обновить, указав новое написание parallel_job_limit. См. раздел "Job queue" руководства разработчика.