Регистрация информации о компонентах
Содержание раздела
Система регистрирует информацию о компонентах инсталляции, записывая ее в предварительно созданную прокси-таблицу. В текущей версии регистрируется только информация о нодах Prostore. Состав информации описан в секции Регистрируемые параметры.
Запись с информацией о компоненте публикуется при его запуске и обновляется с интервалом COMPONENT_INFO_PUBLISH_PERIOD_MS (по умолчанию — раз в минуту). Обновление продолжается в течение сессии — до перезапуска компонента. После перезапуска компонента система публикует новую запись для него, не удаляя записи предыдущих сессий.
Регистрацию информации можно отключить.
Создание таблицы для регистрации информации
По умолчанию прокси-таблица для регистрации информации о компонентах отсутствует. Чтобы создать такую таблицу, выполните запросы следующего вида:
-- создание служебной логической БД
CREATE DATABASE <component_info_datamart>;
-- создание прокси-таблицы
CREATE PROXY TABLE IF NOT EXISTS <component_info_datamart>.<component_info_table_components> (
  instance_id VARCHAR NOT NULL,
  info VARCHAR NOT NULL,
  hash VARCHAR NULL,
  expires_at BIGINT NOT NULL,
  PRIMARY KEY (instance_id)
)
DATASOURCE_TYPE ('<datasource_name>');
Где:
- component_info_datamart— значение параметра конфигурации- COMPONENT_INFO_DATAMART(по умолчанию —- component_info);
- component_info_table_components— значение параметра- COMPONENT_INFO_TABLE_COMPONENTS(по умолчанию —- component_info);
- datasource_name— имя датасорса, где будет размещена таблица; указывается в соответствии с конфигурацией.
Например:
CREATE DATABASE component_info;
CREATE PROXY TABLE IF NOT EXISTS component_info.component_info (
  instance_id VARCHAR NOT NULL,
  info VARCHAR NOT NULL,
  hash VARCHAR NULL,
  expires_at BIGINT NOT NULL,
  PRIMARY KEY (instance_id)
)
DATASOURCE_TYPE ('adp');
Просмотр информации
Чтобы получить информацию о компонентах, выполните SELECT-запрос к созданной прокси-таблице:
SELECT * FROM <component_info_datamart>.<component_info_table_components>
По умолчанию информация доступна с помощью запроса:
SELECT * FROM component_info.component_info
Регистрируемые параметры
- instance_id
-  UUID-идентификатор сессии, присваиваемый при запуске или перезапуске компонента. 
- info
-  Информация о компоненте в виде массива со следующими полями: - name— имя компонента;
- group— группа компонента;
- version— версия компонента;
- gitCommit— SHA-хеш git-коммита, на основе которого собрана версия компонента;
- configuration— поле зарезервировано для будущего использования; в текущей версии имеет значение- unknown;
- createdAt— время запуска компонента, равное целому количеству миллисекунд с 00:00:00 UTC 1 января 1970 года.
 
- hash
-  SHA256-хеш значения поля info.
- expires_at
-  Время (в миллисекундах с 00:00:00 UTC 1 января 1970 года), до которого информация считается актуальной. Рассчитывается как интервал COMPONENT_INFO_TIMEOUT_ACTIVE_MSс момента обновления информации.
Пример вывода
Ниже показан пример вывода SELECT-запроса к прокси-таблице с информацией по одной ноде Prostore. В реальном выводе информация о каждом компоненте представлена одной строкой, но здесь для наглядности она разделена на несколько строк.
| instance_id | info | hash | expires_at | 
|---|---|---|---|
| 613c2bb9-44ad-4c76-a6b8-caa3dd77395c | {“name”:”query-execution-core”, “group”:”ru.datamart.prostore”, “version”:”7.2.0-SNAPSHOT”, “gitCommit”:”c70e9079e5d7a 6c4a413a6d05d5cb125d23b3de9”, “configuration”:”unknown”, “createdAt”:1741608965864} | 92b6579d97344e7a 82f6f91d8492b98 70b08f1897208d4 41101b912cf571abc3 | 1741699600403 | 
Отключение регистрации информации
Чтобы отключить регистрацию информации о компонентах, установите для всех нод кластера значение параметра COMPONENT_INFO_ENABLED равным false.
При необходимости можно также удалить прокси-таблицу <component_info_datamart>.<component_info_table_components>.