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" руководства разработчика.