После установки, настройки бэкенд-сервера располагаются в каталоге /usr/local/FlashphonerWebCallServerOAM/conf:
#cd /usr/local/FlashphonerWebCallServerOAM/conf #ls log4j2.properties wcsoam-core.properties wcsoam.properties WCS-OAM.version wss.jks |
Здесь
Для применения любых изменений настроек, требуется перезапуск бэкенд-сервера.
Для разрешения передачи метрик в БД Influx необходимо указать параметр в файле wcsoam.properties
metric_store=influx |
Для настройки подключения к БД Influx необходимо указать URL БД. По умолчанию, если БД установлена на том же сервере, URL должен быть указан как
influxdb_url=http://localhost:8086 |
Также необходимо указать имя БД и параметры доступа
influxdb_database=wcs_oam influxdb_user=root influxdb_password=root |
По умолчанию, WCS OAM подключается к БД Influx по UDP:
influxdb_udp=true influxdb_udp_port=8089 |
В этом случае возможны потери значений метрик. Для исключения потерь метрики могут передаваться по HTTP POST запросами вида
POST /write?u=root&p=root&db=wcs_oam&rp=default&precision=n&consistency=one HTTP/1.1 3-5062030c-9def-49c2-a89e-639d664ab806 AUDIO_CODEC=102i,AUDIO_LOST=3795015i,AUDIO_RATE=137776i,AUDIO_SYNC=123432141899i,seq=26558i 1562263828767000000 |
Переключение на HTTP для записи метрик производится настройкой
influxdb_udp=false |
В любом случае, выборки метрик осуществляются по HTTP GET запросами вида
GET /query?u=root&p=root&db=wcs_oam&q=SELECT+*+FROM+%221-89dc5510-a198-11e9-a049-030fe6b5675c%22+order+by+time+desc+limit+10+offset+0 HTTP/1.1 |
Для разрешения передачи метрик в БД Timescale необходимо указать параметр в файле wcsoam.properties
metric_store=timescale |
Также необходимо указать URL БД и параметры доступа
timescale.url=jdbc:postgresql://127.0.0.1:5432/wcsstat timescale.username=wcsoam timescale.password=wcsoam |
Кэширование записи метрик в БД для снижения нагрузки настраивается при помощи параметра
timescale_batch_size=1000 |
В этом случае метрики записываются в БД пачками по 1000 значений.
Поддержка хранения статистики включается настройкой
historydb_enabled=true |
Использование встроенной БД H2 допускается только в целях отладки, но не в промышленной эксплуатации |
При необходимости подключения к БД H2, добавьте в файл wcsoam.properties следующие строки
spring.h2.console.enabled=true spring.datasource.url=jdbc:h2:./wcs_oam spring.datasource.driver-class-name=org.h2.Driver spring.datasource.username=sa spring.datasource.password= spring.jpa.database-platform=org.hibernate.dialect.H2Dialect spring.jpa.show-sql=false spring.jpa.hibernate.ddl-auto=update |
Добавьте в файл wcsoam.properties следующие строки
spring.datasource.url=jdbc:postgresql://127.0.0.1:5432/wcsoam spring.datasource.driver-class-name=org.postgresql.Driver spring.datasource.username=wcsoam spring.datasource.password=wcsoam spring.jpa.database-platform=org.hibernate.dialect.PostgreSQLDialect spring.jpa.show-sql=false spring.jpa.hibernate.ddl-auto=create spring.jpa.properties.hibernate.enable_lazy_load_no_trans=true |
Здесь
При больших нагрузках, может возникнуть необходимость изменения размера очереди на запись в БД. Это можно сделать при помощи настройки
historydb_queue_size=3000 |
По умолчанию, размер очереди установлен в 3000 записей.
При необходимости, в целях отладки может быть включено логирование SQL-запросов следующими настройками в файле wcsoam.properties
logging.level.org.hibernate.SQL=debug logging.level.org.hibernate.type.descriptor.sql=trace |
Необходимо отметить, что при использовании TimescaleDB, запись метрик в этом случае также будет логироваться.
По умолчанию, бэкенд-сервер ожидает подключений для передачи метрик от WCS-сервера на TCP порт 7777. Этот порт может быть изменен настройкой
listening_port=7777 |
Для авторизации подключения необходимо указать в файле wcsoam.properties ключ при помощи настройки
security_key=123456789 |
По умолчанию ключ установлен в 123.
Бэкенд-сервер также подключается к WCS для получения данных о публикуемых потоках при помощи REST API. Порт для подключения к WCS указывается настройкой
wcs_rest_port=8081 |
Бэкенд сервер поддерживает клиентские подключения по HTTPS и Secure Websocket. SSL настраивается при помощи следующих параметров
server.ssl.key-store-type=JKS server.ssl.key-store=file:/usr/local/FlashphonerWebCallServerOAM/conf/wss.jks server.ssl.key-store-password=password server.ssl.key-alias=selfsigned |
Здесь:
По умолчанию, бэкенд сервер поставляется с простым сгенерированным сертификатом (self-signed). Импортировать сертификат в хранилище бэкенд-сервера можно тем же способом, что и для WCS сервера, при помощи keytool. Если используется wildcard-сертификат, и бэкенд-сервер раполагается в том же домене, что и WCS сервер, можно также скопировать файл хранилища сертификатов WCS в каталог настроек бэкенд-сервера, например
cp -f /usr/local/FlashphonerWebCallServer/conf/wss.jks /usr/local/FlashphonerWebCallServerOAM/conf/ |
HTTPS порт для обработки REST запросов, WSS подключений и отображения веб интерфейса бэкенд сервера настраивается при помощи параметра
server.port = 8090 |
Запуск бэкенд-сервера производится из каталога /usr/local/FlashphonerWebCallServerOAM/bin
cd /usr/local/FlashphonerWebCallServerOAM/bin ./wcsoam start |
или, если бэкенд-сервер был установлен как системный сервис
systemctl start wcsoam |
Остановка бэкенд-сервера производится из каталога /usr/local/FlashphonerWebCallServerOAM/bin
cd /usr/local/FlashphonerWebCallServerOAM/bin ./wcsoam stop |
или, если бэкенд-сервер был установлен как системный сервис
systemctl stop wcsoam |