Конфигурация
listen: :18931 # (1)!
log_level: Info # (2)!
log_json_output: false # (3)!
cfg_handler_token: '**********' # (4)!
blob_storage: # (5)!
type: webdav # (6)!
webdav: # (7)!
timeouts: # (8)!
connect: 5s # (9)!
response_header: 30s # (10)!
overall: 35s # (11)!
idle_connection: 10s # (12)!
max-idle-conns-per-host: 20 # (13)!
keepalive: 24h0m0s # (14)!
trace: false # (15)!
upload_url: http://127.0.0.1:3333/uploads/ # (16)!
s3: # (17)!
endpoint: "" # (18)!
bucket_name: "" # (19)!
access_key: '**********' # (20)!
secret_access_key: '**********' # (21)!
secure: true # (22)!
region: "" # (23)!
public_url: "" # (24)!
operation_timeout: 30 # (25)!
create_bucket: true # (26)!
blob_storage_owner_prefix: fs_vox # (27)!
base_timezone: Europe/Moscow # (28)!
kafka_reader_count: 1 # (29)!
kafka_reader: # (30)!
brokers: # (31)!
- 127.0.0.1:9092
topic: fs_vox # (32)!
group: fs_vox_cg # (33)!
min_bytes: 1 # (34)!
max_bytes: 10000000 # (35)!
max_wait: 10s # (36)!
verbose_log: false # (37)!
watch_partition_changes: false # (38)!
partition_watch_interval: 0s # (39)!
postgres: # (40)!
host: 127.0.0.1 # (41)!
port: 5432 # (42)!
database: fs_vox # (43)!
user: postgres # (44)!
password: '**********' # (45)!
backoff: # (46)!
initial_interval: 500ms # (47)!
randomization_factor: 0.5 # (48)!
multiplier: 1.5 # (49)!
max_interval: 5s # (50)!
max_elapsed_time: 10s # (51)!
object_counter: # (52)!
url: http://0.0.0.0:18930 # (53)!
apigw_cfg: # (54)!
url: http://127.0.0.1:18800 # (55)!
username: admin # (56)!
password: '**********' # (57)!
device_id: change_me # (58)!
api_version: v1 # (59)!
sync_interval_sec: 120 # (60)!
licenses: {} # (61)!
call_manager_kafka_reader: # (62)!
brokers: # (63)!
- 127.0.0.1:9092
topic: fs_vox_events # (64)!
group: fs_vox_cg # (65)!
min_bytes: 1 # (66)!
max_bytes: 10000000 # (67)!
max_wait: 10s # (68)!
verbose_log: true # (69)!
watch_partition_changes: false # (70)!
partition_watch_interval: 0s # (71)!
call_manager_kafka_writer: # (72)!
brokers: # (73)!
- 127.0.0.1:9092
topic: fs_vox_events # (74)!
batch_size: 2 # (75)!
batch_timeout: 50ms # (76)!
verbose_log: false # (77)!
auto_create_topic: false # (78)!
call_manager_sync_interval: 30s # (79)!
call_manager_max_event_latency: 5s # (80)!
call_manager_max_answer_wait: 5s # (81)!
call_manager_sip_transport: tcp # (82)!
ff_create_rules_on_op_enable: true # (83)!
cleaner_count_events_and_calllog_ttl_days: 30 # (84)!
processor_listen: :18932 # (85)!
call_manager_listen: :18933 # (86)!
- Адрес, на котором сервер принимает входящие запросы
- Уровень логирования
- Включение вывода логов в JSON-формате
- Токен для получения конфигурации сервиса в API
- Настройки подключения к хранилищу объектов (изображений, файлов)
- Тип хранилища объектов. Поддерживается WebDAV и S3, может быть выбран только один
- Настройки WebDAV-хранилища
- Таймауты HTTP-клиента
- Максимальное время ожидания подключения
- Если не ноль, определяет время ожидания заголовков ответа сервера после полного написания запроса (включая его тело, если оно есть). Это время не включает время на чтение тела ответа
- Таймаут задает ограничение по времени для запросов, выполняемых клиентом. Таймаут включает в себя время установления соединения, любые перенаправления и чтение тела ответа. Таймер продолжает работать после возврата
Get, Head, Post или Do и прерывает чтение Response.Body. Таймаут, равный нулю, означает отсутствие ограничения по времени
- Максимальное время, в течение которого keep-alive соединение будет простаивать, прежде чем закрыться. Значение
0 отключает ограничение
- Максимальное количество незадействованных keep-alive соединений на хост
- Задает интервал между keep-alive пробами для активного сетевого соединения. Если значение равно нулю, то keep-alive пробы отправляются со значением по умолчанию (в настоящее время 15 секунд), если это поддерживается протоколом и операционной системой. Сетевые протоколы или операционные системы, не поддерживающие keep-alive, игнорируют это поле. Если значение отрицательное, то keep-alive пробы отключены
- Включение логирования запросов. Если
true, на уровне логирования Debug будут выводиться сообщения следующего формата: при ошибках — +%.3fms request failed: %s, при успешных запросах — +%.3fms request succeeded, status %d, %d bytes body, X-Request-ID=%q
- Адрес, с которым будет работать WebDAV-клиент
- Настройки S3-хранилища. Указываются, если
type: s3
- Адрес подключения к S3-совместимому хранилищу
- Имя бакета, в котором будут храниться объекты
- Ключ доступа к хранилищу
- Секретный ключ доступа к хранилищу
- Если
true, запросы будут отправляться по HTTPS, иначе — по HTTP
- Регион хранилища
- Публичный адрес хранилища
- Таймаут запросов в объектное хранилище
- Создание бакета, если он отсутствует в хранилище
- Префикс для всех путей к файлам (на практике отдельная папка), который функциональное решение будет использовать в хранилище. Необходим, чтобы разделить данные между функциональными решениями и платформой. Необходимо менять, когда есть несколько экземпляров одного функционального решения
- Настройки таймзоны
- Количество параллельных читателей Kafka
- Настройки чтения выходного топика
fs-object-counter с событиями подсчета объектов
- Адреса брокеров Kafka для подключения
- Топик, из которого будет осуществляться чтение
- Идентификатор группы консьюмеров
- Указывает брокеру минимальный размер пакета, который будет принимать потребитель. Установка большого минимума при чтении из топика с низким объемом может привести к задержке доставки, когда брокер не будет иметь достаточно данных для удовлетворения заданного минимума
- Указывает брокеру максимальный размер пакета, который будет принят потребителем. Брокер будет обрезать сообщение, чтобы удовлетворить этот максимум, поэтому выбирайте значение, достаточно большое для самого большого сообщения
- Максимальное время ожидания поступления новых данных при получении пакетов сообщений из Kafka
- Включение детального логирования действий с Kafka
- Включение опроса брокера об изменениях в партициях и выполнение ребалансировки в случае необходимости
- Частота опроса брокера об изменениях в партициях
- Настройки подключения к PostgreSQL
- Хост
- Порт
- Название базы данных (должна быть создана заранее)
- Пользователь
- Пароль
- Настройка повторных HTTP-запросов при неуспешном выполнении предыдущего запроса
- Начальный интервал перед повторением неудачного запроса
- Рандомизация времени между повторами, используется так:
RetryInterval * (random value in range [1 - randomization_factor, 1 + randomization_factor])
- Множитель, увеличивающий время между повторами запросов
- Максимальный интервал между повторениями запросов
- Максимально допустимое время на все попытки повторов. Если
0, попытки будут бесконечными
- Настройки подключения к
fs-object-counter
- Адрес
fs-object-counter
- Адрес
api-gateway
- Настройки подключения к
fs-object-counter через api-gateway (целевой способ использования клиента)
- Имя пользователя
- Пароль
- Идентификатор устройства/сервиса
- Версия API (сейчас только
v1)
- Интервал работы синхронизатора данных с
fs-object-counter
- Соответствие (mapping) ID организаций и ID лицензий, необходимых для создания правил в
fs-object-counter
- Настройки читателя Kafka в менеджере звонков
- Адреса брокеров Kafka для подключения
- Топик, из которого будет осуществляться чтение
- Идентификатор группы консьюмеров
- Указывает брокеру минимальный размер пакета, который будет принимать потребитель. Установка большого минимума при чтении из топика с низким объемом может привести к задержке доставки, когда брокер не будет иметь достаточно данных для удовлетворения заданного минимума
- Указывает брокеру максимальный размер пакета, который будет принят потребителем. Брокер будет обрезать сообщение, чтобы удовлетворить этот максимум, поэтому выбирайте значение, достаточно большое для самого большого сообщения
- Максимальное время ожидания поступления новых данных при получении пакетов сообщений из Kafka
- Включение детального логирования действий с Kafka
- Включение опроса брокера об изменениях в партициях и выполнение ребалансировки в случае необходимости
- Частота опроса брокера об изменениях в партициях
- Настройки продюсера Kafka для передачи запросов на совершение звонков в Call Manager
- Адреса брокеров Kafka для подключения
- Топик, в который будут отправляться сообщения. Может быть пустым в случае, если приложение отправляет данные в несколько топиков
- Максимальное число сообщений, которые будут накапливаться перед отправкой
- Максимальное время, в течении которого будет производиться накопление батча
- Включение детального логирования действий с Kafka
- Автоматическое создание топика при его отсутствии
- Интервал синхронизации данных из БД в Call Manager
- Максимальное время от момента появления события в
video-worker до обработки его в Call Manager. Звонок не будет совершен, если указанное время будет превышено
- Максимальное время ожидания ответа от SIP-устройства
- Транспорт работы SIP-протокола (
tcp или udp). Рекомендуется tcp, иначе возможны обрывы фраз
- Флаг управления внутренней периодической задачей (синкером). Если
true, операция синхронизации будет выполняться в рамках запроса на изменение точки наблюдения
- Время жизни событий и логов вызова в БД. Не затрагивает хранилище изображений. При значении
0 очистка не производится
- Порт процессора. Используется для проверки работоспособности (health checks) и получения конфигурации через внутренний эндпоинт
- Порт менеджера звонков. Используется для проверки работоспособности (health checks) и получения конфигурации через внутренний эндпоинт