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

LUNA PLATFORM v.5.17.0#

Изменения

  • Добавлен функционал для подсчёта статистики по выполненным запросам. Полученная статистика позволит проводить анализ использования LP для дальнейшего улучшения системы. Подсчитываются:

    • количество запросов на ресурсы LP, например, 'POST: "handlers/handler_id/events"'.

    • суммарное количество оценок одного типа (например, "estimate_liveness").

    • количество успешных запросов и запросов, завершившихся с ошибкой.

    Статистика ведётся для каждого кода ошибки по каждому ресурсу для каждого сервиса. Статистика сортируется по месяцам.

    Сбор статистики работает только при включённом мониторинге и установленной InfluxDB версии 2.0.8 и более поздних версий.

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

    Для получения статистики следует отправить запрос на ресурс "/luna_sys_info" сервиса Admin или перейти в GUI сервиса Admin на вкладку "help" и нажать "Get LUNA PLATFORM system info". Необходимая информация содержится в разделе "stats".

    Пример ответа:

    { "stats": { "estimators_stats": [ { "count": 1, "month": "2021-09", "name": "body_descriptor_extractor_usages" } ], "routes_stats": [ { "service": "luna-api", "route": "GET:/version", "month": "2021-09", "errors": [ { "count": 1, "error_code": "12012" } ], "request_stats": [ { "count": 1, "status_code": "200" } ] } [...] ] }

    Статистика подсчитывается в InfluxDB на основе данных из бакета "luna_monitoring" и хранится в бакете "luna_monitoring_aggregated". Бакеты создаются в InfluxDB. Не следует удалять данные из данного бакета, иначе будет невозможно получить статистику.

    Задачи для подсчёта статистики можно найти в GUI InfluxDB на вкладке "Tasks".

    Статистика подсчитывается раз в сутки, поэтому не отображается сразу после запуска LP. Можно вручную запустить выполнение задач на вкладке "Tasks" в GUI InfluxDB.

    Для включения подсчёта статистики следует выполнить команду python influx2_cli.py create_usage_task --luna-config http://127.0.0.1:5070/1 после запуска сервиса Admin. Соответствующая информация добавлена в инструкцию по установке. Команда автоматически создаёт необходимый бакет "luna_monitoring_aggregated". Если данная команда не выполнена, то в ответе "/luna_sys_info" не будет отображаться статистика.

    При необходимости можно отключить сбор статистики, удалив или отключив соответствующие задачи на вкладке "Tasks" в GUI InfluxDB.

    Подробную информацию "Подсчет статистики выполненных запросов и оценок" в руководстве администратора.

  • Прекращена поддержка InfluxDB версии 1. Параметры для этой версии были удалены из конфигурационных файлов. Теперь для мониторинга работы LP используется InfluxDB 2, начиная с версии 2.0.8.

    Если ранее использовался InfluxDB 1, то можно выполнить миграцию на новую версию. Описание миграции дано на официальном сайте InfluxDB:

    https://docs.influxdata.com/influxdb/v2.0/upgrade/v1-to-v2/docker/

  • В ресурс "/sdk" добавлена фильтрация по состояниям Liveness (spoof, real, unknown).

  • Внесены изменения в лицензирование.

    Для Liveness V2 добавлена возможность лицензировать количество выполненных транзакций. Теперь при лицензировании Liveness V2 можно выбрать между безлимитной лицензией и лицензией с ограниченным числом транзакций.

    Каждое использование Liveness в запросах уменьшает счётчик транзакций. После исчерпания лимита транзакций будет невозможно использовать оценку Liveness в запросах. На запросы не использующие Liveness или с отключённой оценкой Liveness исчерпание лимита не влияет, они продолжают работать в обычном режиме.

    Утилита HASP обновлена до версии 8.23. При обновлении на новую сборку LP требуется удалить старую утилиту HASP и установить новую. Сервис Licenses не запустится, если использована утилита предыдущих версий.

    При использовании Liveness V2 с транзакциями потребуется обновить лицензию при переходе на новую сборку, т. к. ранее выданные лицензии не поддерживают данную возможность.

    Информация о текущих параметрах лицензии отображается в ответе на запрос GET на ресурс "/license" сервиса Licenses, в ответе на запрос в ресурс "/luna_sys_info" сервиса Admin и в GUI сервиса Admin на вкладке "help".

    Подробную информацию можно найти в разделе "Информация о лицензии" в руководстве администратора.

  • Cервис Licenses больше не зависит от других сервисов LP, кроме Configurator (при получении настроек из него), и может запускаться независимо от них. Но сервисы LP, например Faces, теперь зависят от Licenses. В связи с этим был изменён порядок запуска сервисов в документации по установке.

    Сервисы теперь сами пишут данные о лицензии в базу мониторинга:

    • Сервис Faces пишет данные о созданных лицах с прикреплёнными биометрическими шаблонами в базу мониторинга в поле license_faces_limit_rate.

    • Сервис Handlers пишет данные о количестве доступных транзакций Liveness V2 в базу мониторинга в поле liveness_balance.

      Предупреждение об исчерпании количества доступных транзакций отправляется в мониторинг и логи сервиса при достижении 2000 оставшихся транзакций Liveness V2 (данный порог задан в системе).

    • Сервис Licenses пишет данные о сроке истечения лицензии в базу мониторинга в поле license_period_rest. Данное поведение использовалось и в предыдущих сборках.

    Подробную информацию можно найти в разделах "Информация о лицензии" и "Сервис Licenses" в руководстве администратора.

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

  • Ускорен запрос на получение лиц с атрибутами в сервисе Faces. Ранее сервис Licenses мог некорректно обрабатывать значение параметра FacesLimit на больших базах данных.

  • В сервисе Index Manager исправлена проблема, когда не перестраивался индекс. Индекс был удалён вручную или не был построен из-за падения сервиса, но был указан в базе данных как существующий, поэтому система не перестраивала его.

    Теперь в этих случаях статус списков с отсутствующим индексом будет выставляться как failed. Далее задача на построение индекса будет добавлена в планировщик, и индекс будет построен.