Описание

Настройки

Настройка производится путем изменения значений переменных среды или ENV файла.

ENV файл представляется собой текстовый файл, в котором описаны настройки в формате КЛЮЧ=ЗНАЧЕНИЕ. Каждая строка файла может содержать одну пару КЛЮЧ=ЗНАЧЕНИЕ. Для ENV файла допускается имя .env и win.env. Значение переменных из файла ENV имеют более высокий приоритет чем переменные среды.

Описание настроек

ниже описаны настройки, разбитые на группы

Настройки приложения
Настройки локальной базы приложения
Настройки расписаний запуска задач
Настройки для взаимодействия с index-сервисом
Настройки адаптера CLICKHOUSE
Настройки адаптера COUNTMAX

возможно задание нескольких экземпляров.

номер экземпляра задается необязательным окончанием _NUM,
где NUM - целое положительное число

например
SPPINDEX_COUNTMAX_HOST - задает адрес сервера для нулевого экземпляра адаптера
SPPINDEX_COUNTMAX_HOST_1 - задает адрес сервера для первого экземпляра адаптера

сортировка адаптеров осуществляется по номеру экземпляра
допускается пропуск номеров

в описании переменных необязательное окончание обозначается квадратными скобками

Облако

Тестовый экземпляр утилиты миграции развернут в облаке. spp_agent_dev -> index-migration

Взаимодействие с index-сервисом

В зависимости от расписания заданного в SPPINDEX_CRON_UPLOAD запускается задача загрузки данных в index-сервис.

Загружаются только раннее не синхронизированные данные.

Последовательность действий итерации:

  1. Получение из локально кеша объектов по которым есть несихронизированные метрики
  2. Для каждого объекта из пункта 1 делается запрос http запрос в index-сервис для сохранения. В ответе получаем id объекта в базе сервиса
  3. Получение несинхронизированных метрик из локального кеша.
  4. Отправка данных из пункта 3 пачками в index-сервис
  5. При успешном запросе в п.4 помечаем метрики как синхронизированные

Описание API для взаимодействия с index-сервисом

Запрос сохранения объекта

POST: SPPINDEX_SERVICE_URL/control/clients/1/init_organization_object

{
    "external_id": OBJECT_ID
	"name": OBJECT_NAME
}

Ответ сервиса:

{
    "error": ERROR_FLAG,
    "message": MESSAGE,
    "id": REMOTE_OBJECT_ID
}
Запрос сохранения метрик

POST: SPPINDEX_SERVICE_URL/data/visits

[
  	...,
    {
  		"object_id": REMOTE_OBJECT_ID,
  		"day": DATE,
  		"visits": VISITS_COUNT
 	},
	...
]

Ответ сервиса:

{
    "error": ERROR_FLAG,
    "message": MESSAGE
}

 

 


Revision #5
Created 16 October 2023 12:37:53 by Роман Каржавин
Updated 23 October 2023 13:42:01 by Роман Каржавин