LUNA PLATFORM v.5.49.1#
Изменения
-
Добавлена возможность задать расписание выполнения задач Garbage collection и Linker.
С помощью расписания можно гибко управлять временем начала выполнения задач. Например, можно настроить регулярное расписание для очистки событий старше одного месяца каждую пятницу в ночное время.
Расписание создается с помощью запроса "create tasks schedule" к сервису API, в котором указывается содержимое создаваемой задачи и временной интервал её запуска. Для указания временного интервала используются Cron-выражения.
При необходимости можно создать отложенное расписание, а затем активировать его с помощью параметра "action" = "start" запроса "patch tasks schedule". Аналогично можно остановить работу задачи по расписанию с помощью "action" = "stop". Для удаления расписания можно воспользоваться запросом "delete tasks schedule".
Права на работу с расписаниями задаются в токене разрешением "task". Это означает, что если у пользователя есть разрешение на работу с задачами, то он также сможет воспользоваться расписанием.
В руководство по установке и по запуску с помощью Docker Compose добавлен пример CURL-запроса для запуска ежедневного расписания для задачи Garbage collection для событий старше 30 дней с удалением БО и исходных изображений.
В базу данных Tasks добавлена новая таблица "schedule", содержащая всю информацию о расписании выполнения задач. Получить информацию из БД о созданном расписании можно с помощью запросов "get tasks schedule" и "get tasks schedules".
См. подробную информацию в разделе "Запуск задач по расписанию" руководства администратора.
-
Теперь если формат запроса равен "application/msgpack" и входные данные не соответствуют формату MessagePack, то будет возвращена ошибка с кодом "12047" и описанием "Failed to validate input msgpack. Path: '{}', message: '{}'".
Ранее возвращался код ошибки "12022" с описанием "Failed to validate input json. Path: '{}', message: '{}'".
-
В запрос "generate events" добавлена поддержка указания пользовательских метаданных для изображения, передаваемого с помощью схемы "multipart/form-data" в поле "image".
Ранее указание пользовательских метаданных было доступно только для исходных изображений (поля "image_origin"). Также исправлена ошибка, из-за которой в описании запроса "generate events" не отображалось описание про указание пользовательских метаданных для исходных изображений.
Если метаданные будут предоставлены одновременно в обоих полях, то будет использовано значение из поля "image_origin".
Метаданные передаются с помощью заголовков вида "X-Luna-Meta-
: ", которые отправляются в сервис Image Store при сохранении изображения во время генерации события. -
Обновлен сервис LUNA Dashboards до версии 0.0.8.
В этой версии добавлен отсутствующий дашборд для сервиса Remote SDK.
Также в комплект поставки добавлен архив с плагином "grafana-piechart-panel", предназначенным для ручной установки дашбордов.
Исправленные ошибки
-
Исправлен ряд следующих ошибок при запросах к сервису Events:
- Исправлено появление ошибки с кодом состояния 500 при запросе к ресурсу "/events/stats" с параметром "filters" > "value", имеющим тип "bool".
- Исправлено появление ошибки с кодом состояния 500 при запросе к ресурсу "/events/stats" и использовании недопустимых операторов в фильтре, который был равен "null".
- Исправлено появление ошибки с кодом состояния 500 при запросе к ресурсу "/events", когда в JSON-запросе содержалось число, превышающее предел "int64".
- Исправлена ошибка с некорректной фильтрацией статистики событий по "null" с использованием операторов "neq" и "nin".
-
Актуализирована схема тела запроса для задачи Estimator для типа источника "zip" в спецификации OpenAPI сервиса API.
-
Исправлена ошибка, при которой загрузка значений настроек сервиса API из переменных окружения не работала для:
- вложенных ключей настройки, например, "VL_SETTINGS.LUNA_SERVICE_NAME_DB.DB_SETTINGS.CONNECTION_POOL_SIZE=10"
- значений типа массива, например, "VL_SETTINGS.OTHER.LUNA_SERVICE_NAME_ACTIVE_PLUGINS=[logger]"
-
Исправлена ошибка в запросе "save event" спецификации OpenAPI сервиса API, при которой параметр "detections" > "samples" > "face" > "detection" > "face_quality" > "checks" > "check_face_properties_request" > "max" отображался как обязательный.