Конфигурация
listen: :18930 # (1)!
log_json_output: false # (2)!
log_level: INFO # (3)!
cfg_handler_token: '**********' # (4)!
timezone: Europe/Moscow # (5)!
blob_storage: # (6)!
type: webdav # (7)!
s3: null # (8)!
webdav: # (9)!
upload_url: http://127.0.0.1:3333/uploads # (10)!
http_client_config: # (11)!
base_url: '' # (12)!
cache: # (13)!
cacheable_methods: # (14)!
- GET
cacheable_status_codes: # (15)!
- 200
- 203
- 300
- 301
- 308
enabled: false # (16)!
global_ttl_sec: null # (17)!
limits: # (18)!
keepalive_expiry: 5.0 # (19)!
max_connections: 100 # (20)!
max_keepalive_connections: 20 # (21)!
retries: # (22)!
backoff_factor: 0.1 # (23)!
enabled: false # (24)!
jitter_ratio: 0.1 # (25)!
max_attempts: 3 # (26)!
max_backoff_wait: 10.0 # (27)!
timeout: 30
blob_storage_owner_prefix: fs_object_counter # (28)!
cam_name_ttl_maxsize: 1000 # (29)!
cam_name_ttl_secs: 1800 # (30)!
cleaner_count_results_ttl_days: 30 # (31)!
cleaner_count_images_ttl_hours: 720 # (32)!
detectors_detection_score: # (33)!
body: 0.7 # (34)!
car: 0.7 # (35)!
face: 0.5 # (36)!
functional_solution_id: object_counter # (37)!
imager_draw_style: # (38)!
area_polygon: # (39)!
color: '#0000ff' # (40)!
width: 3 # (41)!
heatmap_style: # (42)!
colormap: 11 # (43)!
opacity: 50 # (44)!
other_bbox: null # (45)!
rule_bbox: # (46)!
color: '#ff0000'
width: 2
imager_secret_key: '**********' # (47)!
imager_url: http://127.0.0.1:18777 # (48)!
kafka_group_id: fs_object_counter_cg # (49)!
kafka_url: 127.0.0.1:9092 # (50)!
main_api_client_cfg: # (51)!
base_url: http://127.0.0.1:18800 # (52)!
cache: # (53)!
cacheable_methods: # (54)!
- GET
cacheable_status_codes: # (55)!
- 200
- 203
- 300
- 301
- 308
enabled: false # (56)!
global_ttl_sec: null # (57)!
limits: # (58)!
keepalive_expiry: 5.0 # (59)!
max_connections: 100 # (60)!
max_keepalive_connections: 20 # (61)!
retries: # (62)!
backoff_factor: 0.1 # (63)!
enabled: false # (64)!
jitter_ratio: 0.1 # (65)!
max_attempts: 3 # (66)!
max_backoff_wait: 10.0 # (67)!
api_gateway_api_version: v1 # (68)!
internal_auth: # (69)!
internal_api_token: '**********' # (70)!
main_api_url: http://127.0.0.1:18600 # (71)!
main_api_prefix: main-api # (72)!
public_auth: # (73)!
device_id: fs_object_counter
password: '**********'
username: admin
timeout: 30
min_shot_interval_sec: 10 # (74)!
mongo_connection_str: mongodb://127.0.0.1:27017 # (75)!
mongo_db_name: fs_object_counter # (76)!
notifier_kafka_topic: notifier_topic # (77)!
notifier_msg_type: fs_object_counter
num_event_processors: 1 # (78)!
override_attributes_confidences: {} # (79)!
presence_threshold_sec: 10 # (80)!
reporter_cg: fs_object_counter_reporter_cg # (81)!
reporter_topic: fs_object_counter_reporter
rule_name_ttl_maxsize: 1000 # (82)!
rule_name_ttl_secs: 600
sync_interval_sec: 60 # (83)!
ui_config: {} # (84)!
ui_object_types_labels: # (85)!
body: Силуэты
car: Транспортные средства
crowd: Толпы
face: Лица
head: Головы
dog: Собаки
kafka_count_results_topic: object_counter_results # (86)!
replicator_cfg: # (87)!
db_connection:
database: object_counter_analytics
host: 127.0.0.1
password: '**********'
port: 5432
user: postgres
num_workers: 1
track_id_ttl_maxsize: 1000 # (88)!
track_id_ttl_secs: 600 # (89)!
- Адрес, на котором будет слушать сервер
- Уровень логирования
- Включение вывода логов в JSON-формате
- Токен для получения конфигурации сервиса в API
- Временная зона для отображения даты и времени в файле отчета
- Настройки подключения к хранилищу объектов (изображений, файлов)
- Тип хранилища объектов. Поддерживаются WebDAV и S3, выбрать можно только один
- Настройки S3-хранилища. Указывается, если
type: s3
- Настройки WebDAV-хранилища
- Адрес, с которым будет работать WebDAV-клиент
- Настройки WebDAV-клиента
- Адрес подключения к внешнему сервису
- Настройки кэширования
- Методы, которые будут кэшироваться
- HTTP-статусы, которые будут кэшироваться
- Включение/отключение кэширования
- Глобальное время жизни кэша в секундах
- Лимиты HTTP-клиента
- Время жизни keep-alive
- Максимальное число подключений
- Максимальное число keep-alive подключений
- Настройки повторения запросов при ошибках
- Динамика роста времени между попытками
- Включение/отключение повторов
- Настройки jitter
- Максимальное число попыток
- Максимальное время ожидания между попытками
- Префикс для всех путей к файлам (на практике отдельная папка), который функциональное решение будет использовать в хранилище. Необходим, чтобы разделить данные между функциональными решениями и платформой. На практике необходимо менять, когда есть несколько экземпляров одного функционального решения
- Максимальное количество камер в кэше
- Время инвалидации записей в кэше
- Время жизни результатов подсчета в MongoDB. Не затрагивает хранилище изображений. При значении
0 очистка не производится
- Время жизни результатов в хранилище изображений. Не затрагивает результаты подсчета в MongoDB. При значении
0 очистка не производится
- Минимальное значение уверенности модели (detection score), при котором объекты соответствующего типа будут включены в подсчет
- Минимальное значение уверенности модели (detection score) для силуэтов
- Если объект не указан, то используется значение по умолчанию —
0.7
- Минимальное значение уверенности модели (detection score) для лиц
- Идентификатор REST-ресурса функционального решения, с которым будет связан экземпляр функционального решения как программного продукта. На практике необходимо менять, когда есть несколько экземпляров одного функционального решения
- Настройки отрисовки на изображениях
- Зона подсчета объектов
- Шестнадцатеричное представление цвета линий
- Ширина линий
- Настройки отрисовки тепловой карты для экстрактора толпы
- Ссылка на ознакомление с параметром: https://docs.opencv.org/3.4/d3/d50/group__imgproc__colormap.html
- Прозрачность в процентах
- Настройки обводки объектов, не соответствующих правилам подсчета. При значении
null обводка не отображается
- Объекты, соответствующие правилу подсчета
- Секретный ключ для генерации ссылки на изображение. Необходимо взять значение из компонента
blober платформы
- Адрес сервиса отдачи бинарных данных. Используется, например, для формирования ссылки на изображения в файле отчета. На практике указывается внешний адрес компонента
nginx-router платформы. Компонент nginx-router проксирует запрос к сервису blober
- ID консьюмер-группы в Kafka
- Адрес подключения к Kafka
- Параметры клиента
main-api для подключения к платформе
- Адрес подключения к внешнему сервису
- Настройки кэширования
- Методы, которые будут кэшироваться
- HTTP-статусы, которые будут кэшироваться
- Включение/отключение кэширования
- Глобальное время жизни кэша в секундах
- Лимиты HTTP-клиента
- Время жизни keep-alive
- Максимальное число подключений
- Максимальное число keep-alive подключений
- Настройки повторения запросов при ошибках
- Динамика роста времени между попытками
- Включение/отключение повторов
- Настройки jitter
- Максимальное число попыток
- Максимальное время ожидания между попытками
- Используемая версия API
- Настройки для внутреннего подключения. Используются только тогда, когда функциональное решение и
main-api имеют сетевую связность. На практике функциональное решение "Подсчет объектов" внутренним подключением не пользуется
- Токен для внутреннего подключения. Необходимо получить из компонента
main-api платформы
- Адрес сервиса
main-api
- Префикс, используемый для подключения к сервису
main-api
- Настройки авторизации для функционального решения. От указанного здесь пользователя функциональное решение будет выполнять запросы по созданию процессингов. Необходимо, чтобы это был администратор административной организации
- Минимальное время снятия кадра. Если интервал снятия изображения будет меньше, то запрос на создание правила вернет ошибку. Значение должно быть больше
10 из-за ограничений платформы
- Адрес подключения к базе данных MongoDB
- Название базы данных для функционального решения. На практике необходимо менять, когда есть несколько экземпляров одного функционального решения
notifier — это компонент платформы для отправки внешних уведомлений (сейчас Telegram и Webhook). Он читает топик Kafka и на основании типа сообщения отправляет тот или иной вид уведомления. Настройки вида и канала уведомления выполняются через API компонента notifier
- Количество экземпляров параллельных процессоров для обработки событий
- Настройки, переопределяющие минимальное значение уверенности модели (confidence) для отдельных атрибутов. В приложении заранее установлены рекомендованные значения. Формат:
{<extractor_model>.<attribute>: <confidence>}. Пример: {"body_color.top_color": 0.495}
- Порог присутствия объекта в кадре
reporter — sidecar-сервис функционального решения, формирующий XLSX/CVS-отчеты. Для него задаются топик и консьюмер-группа, куда отправляются запросы на формирование отчетов. На практике необходимо менять, когда есть несколько экземпляров одного функционального решения
- Настройки кэша для отображения актуальных названий правил в результатах подсчета
- Управляющее взаимодействие функционального решения с платформой осуществляется посредством внутренней периодической задачи, которая с заданной частотой обращается к платформе для создания, удаления, включения и выключения процессингов, а также для получения по ним статистики
- Задается конфигурация фильтров для поиска в пользовательском интерфейсе: мониторинг, события, список КП
- Сопоставление (mapping) названий объектов из
extraction-api с названиями, отображаемыми в пользовательском интерфейсе
- Топик Kafka, в который будут отправлены результаты подсчета
- Настройки репликации результатов подсчета в TimescaleDB для работы дашбордов Superset
- Максимальный размер in-memory кэша треков при работе по видеопотоку
- Максимальное время жизни записи в in-memory кэше треков при работе по видеопотоку