Организация процесса загрузки CDR
Загрузка CDR производится с помощью предбиллинга (HMED) и тарификатора (HOCS).
Предбиллинг состоит из двух частей: коллектора (HMED-C) и ядра предбиллинга (HMED-M). Тарификатор также представляет собой отдельное приложение.
Все компоненты связываются между собой по протоколу AMQP через общий AMQP-сервер (rabbitmq версии не ниже 3.1.5).
Настройка загрузки CDR
Настройка HMED и HOCS производится через конфигурационные файлы в формате YAML. Конфигурация по-умолчанию находится в директориях /opt/hydra/hmed/conf
и /opt/hydra/hocs/conf
. Пользовательская конфигурация задаётся отдельно и по умолчанию находится в директориях /etc/hydra/hmed
и /etc/hydra/hocs
соответственно.
При запуске приложения все yml-файлы в директориях конфигураций объединяются в общее дерево конфигурации. При этом пользовательская конфигурация имеет больший приоритет, чем конфигурация по умолчанию.
Общие настройки описаны ниже, специфические параметры каждого компонента описаны в соответствующих разделах.
Общие настройки приложений
В качестве примера приведена конфигурация HMED-M, однако подобные настройки также используются в HMED-C и HOCS.
# настройки логирования log: common: # уровень логирования level: info # путь к лог-файлу path: /var/log/hydra/hmed/mediation.log # настройки ротации логов rotate: # максимальный размер лога в Кб size: 10240 # максимальное количество файлов count: 25 # путь к pid-файлу pid_path: /var/run/hydra/hmed/mediation.pid server: # максимальное время обработки запроса до прерывания по таймауту в секундах request_timeout: 30 # максимальное количество попыток завершения процесса сигналом SIGTERM до отправки сигнала SIGTERM abort_attempts: 5 # задержка между попытками завершения сигналом SIGTERM в секундах abort_delay: 1 # флаг перезапуска процесса в случае его аварийного завершения (значение false используется при отладке) restart_workers: true system: # настройки соединения с AMQP-сервером amqp: host: 127.0.0.1 port: 5672 username: guest password: guest # настройки AMQP-очередей amqp: mediation: exchange: mediation exchange_type: fanout queue: mediation ocs: exchange: hocs exchange_type: fanout queue: ocs error: exchange: hmed_error exchange_type: fanout queue: mediation