Logging-service - это сервис для обеспечения журналирования работы с портальными учётными записями (пока используется только для журналирования работы сервиса eltex-mercury).
Межсервисный обмен реализован на базе gRPC API.
Logging-service взаимодействует с базой ЛК wifi-customer-cab и пишет получаемые данные в коллекцию eventlog (в GUI ЛК это таблица "Журнал событий - Журнал модификаций учетных записей").
Конфигурационные файлы сервиса:
/etc/eltex-logging-service/application.conf
#Порт на котором работает сервис server { port = 9099 } # активирование записи в коллекцию eventlog eventlog { enabled = true } # активирование отправки данных в СОРМ # Функционал в разработке. sorm { enabled = false dir = /var/log/eltex-logging-service/sorm3/ } # настройка доступа к базе ЛК database { uri = "mongodb://localhost:27017/wifi-customer-cab" poolSize = 5 timeout = 5s }
- /etc/default/eltex-logging-service
# Initial size of Java heap JAVA_INIT_HEAP=4m # Maximum size of Java heap JAVA_MAX_HEAP=32m # Additional arguments to pass to java JAVA_OPTS="-XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/var/log/eltex-logging-service"
Установка сервиса: apt-get install eltex-logging-service
Докеризация сервиса
Сервис может быть запущен в docker-контейнере. Для этого необходимо подготовить файл с переменными окружения .env и docker-compose.yml
docker-compose.yml
version: "3" services: eltex-logging-service: container_name: eltex-logging-service image: hub.eltex-co.ru/eltex-logging-service:1.18 ports: - 9099:${LOGGING_SERVICE_PORT} environment: - server.port=${LOGGING_SERVICE_PORT} - eventlog.enabled=${LOGGING_SERVICE_EVENTLOG} - sorm.enabled=${LOGGING_SERVICE_SORM} - sorm.dir=${LOGGING_SERVICE_SORM_DIR} - database.uri=${LOGGING_SERVICE_DB_URI} - database.poolSize=${LOGGING_SERVICE_DB_POOL_SIZE} - database.timeout=${LOGGING_SERVICE_DB_TIMEOUT}
.env
LOGGING_SERVICE_PORT=9099 LOGGING_SERVICE_EVENTLOG=true LOGGING_SERVICE_SORM=false LOGGING_SERVICE_SORM_DIR=/var/log/eltex-logging-service/sorm3/ LOGGING_SERVICE_DB_URI=mongodb://localhost:27017/wifi-customer-cab LOGGING_SERVICE_DB_POOL_SIZE=5 LOGGING_SERVICE_DB_TIMEOUT=5s
Описание переменных окружения
Запуск сервиса
- LOGGING_SERVICE_PORT - порт, который будет слушать сервис.
- JAVA_INIT_HEAP - Xms JVM опция.
- JAVA_MAX_HEAP - Xmx JVM опция.
- JAVA_OPTS – другие аргументы запуска JVM (может перезаписать любые другие аргументы)
Настройка лога событий
- LOGGING_SERVICE_EVENTLOG - включить поддержку лога событий.
Настройка SORM3
- LOGGING_SERVICE_SORM - включить поддержку sorm3.
- LOGGING_SERVICE_SORM_DIR - директория sorm3.
Настройки взаимодействия с БД
- LOGGING_SERVICE_DB_URI - URI БД.
- LOGGING_SERVICE_DB_POOL_SIZE - количество соединений с БД.
- LOGGING_SERVICE_DB_TIMEOUT - таймаут соединения с БД.