2. Конфигурация Модуля группировки чанков репликации (application.yml)

Файл application.yml – основной конфигурационный файл модуля, в котором описаны подключение к сервису Kafka, порт веб-сервера, и настройки журналирования запросов и ответов.

3. Пример файла application.yml

Приведем типовую структуру файла и возможные настройки Модуля группировки чанков репликации. Следует учитывать, что в конфигурационном файле следует задавать только те настройки, которые необходимы для решения текущих бизнес-задач.

http-server:
  port: ${HTTP_PORT:8084}

kafka:
  agent.topic.prefix: ${AGENT_TOPIC_PREFIX:}
  # максимальное количество обработчиков входящих запросов
  max-concurrent-handle: ${KAFKA_MAX_CONCURRENT_HANDLE:100}
  # периодичность фиксации оффсета обработанных сообщений
  commit-interval: ${KAFKA_COMMIT_INTERVAL:5s}
  external:
    bootstrap.servers: ${KAFKA_BOOTSTRAP_SERVERS:localhost:9092}
    topic.prefix: ${EXTERNAL_TOPIC_PREFIX:${kafka.agent.topic.prefix}}
  internal:
    bootstrap.servers: ${PS_KAFKA:localhost:9092}
    topic.prefix: ${INTERNAL_TOPIC_PREFIX:${kafka.agent.topic.prefix}}
  consumer:
    delta-apply-request: ${kafka.external.topic.prefix}delta.in.rq
    property:
      bootstrap.servers: ${kafka.external.bootstrap.servers}
      group.id: ${kafka.external.topic.prefix}podd-adapter-group-repl
      auto.offset.reset: earliest
      enable.auto.commit: false
  producer:
    refresh-interval: 60s
    delta-apply-notification: ${kafka.internal.topic.prefix}subscription.in
    property:
      bootstrap.servers: ${kafka.internal.bootstrap.servers}

logging:
  scl.delta:
      enabled: ${SCL_DELTA_ENABLED:false}

metrics:
  port: ${METRICS_PORT:9837}

4. Параметры конфигурации

Настройка конфигурации Модуля группировки чанков репликации осуществляется путем редактирования параметров настроек в файле application.yml.

Пример файла application.yml для Модуля группировки чанков репликации можно найти в разделе «2.2. Настройка на состав программных средств» Руководства администратора.

В файле конфигурации Модуля группировки чанков репликации могут быть настроены следующие секции:

  • http-server - указывается порт веб-сервера;

  • kafka - настройки параметров подключения к шине данных Apache Kafka;

  • logging - настройки журналирования запросов и ответов;

  • metrics - настройка порта для получения метрик.

4.1. Секция http-server

В секции http-server указывается порт веб-сервера.

Например:

http-server:
  port: ${HTTP_PORT:8084}

Параметры настроек

  • port - порт веб-сервера, например: HTTP_PORT:8084.

4.2. Секция kafka

Секция kafka определяет настройки взаимодействия через ПОДД-адаптер между Поставщиком данных (producer) и Получателем данных (consumer).

В секции kafka собраны настройки параметров подключения к шине данных Apache Kafka.

Например:

kafka:
  agent.topic.prefix: ${AGENT_TOPIC_PREFIX:}
  max-concurrent-handle: ${KAFKA_MAX_CONCURRENT_HANDLE:100}
  commit-interval: ${KAFKA_COMMIT_INTERVAL:5s}
  external:
      bootstrap.servers: ${KAFKA_BOOTSTRAP_SERVERS:localhost:9092}
      topic.prefix: ${EXTERNAL_TOPIC_PREFIX:${kafka.agent.topic.prefix}}
  internal:
      bootstrap.servers: ${PS_KAFKA:localhost:9092}
      topic.prefix: ${INTERNAL_TOPIC_PREFIX:${kafka.agent.topic.prefix}}
  consumer:
    delta-apply-request: ${kafka.external.topic.prefix}delta.in.rq
    property:
      bootstrap.servers: ${kafka.external.bootstrap.servers}
      group.id: ${kafka.external.topic.prefix}podd-adapter-group-repl
      auto.offset.reset: earliest
      enable.auto.commit: false
  producer:
    refresh-interval: 60s
    delta-apply-notification: ${kafka.internal.topic.prefix}subscription.in
    property:
      bootstrap.servers: ${kafka.internal.bootstrap.servers}

Параметры конфигурации

  • topic - префикс для топиков агента ПОДД, например AGENT_TOPIC_PREFIX;

  • max-concurrent-handle - максимальное количество обработчиков входящих запросов, например KAFKA_MAX_CONCURRENT_HANDLE:100;

  • commit-interval - периодичность фиксации оффсета обработанных сообщений, например KAFKA_COMMIT_INTERVAL:5s.

4.3. Секция logging

Секция logging предназначена для настройки журналирования запросов и ответов

Например:

logging:
scl.delta:
    enabled: ${SCL_DELTA_ENABLED:false}

Параметры конфигурации

  • enabled - Журналировать события SCL delta, например: SCL_DELTA_ENABLED:false.

LOG_FORMAT - Логирование в формате (JSON/TEXT) - указывается в logback.xml.

4.4. Секция metrics

Секция metrics предназначена для настроек порта получения метрик.

Например:

metrics:
  port: ${METRICS_PORT:9837}

Параметры настроек

  • port - Порт для получения метрик, например {METRICS_PORT:9837}.