4. Функции СМЭВ QL Сервера
4.1. Администрирование и конфигурирование
4.1.1. Создание СМЭВ QL Сервера
Данная функция позволяет создать рабочий экземпляр СМЭВ QL сервера с помощью команды, выполняемой утилитой.
Параметр |
Описание |
Где задается |
|---|---|---|
app name |
Имя создаваемого экземпляра СМЭВ QL сервера. Параметр является обязательным для заполнения |
в командной строке
|
Предварительное состояние:
Развернут дистрибутив СМЭВ QL сервер.
Запущена консоль утилиты для работы со СМЭВ QL.
Сценарий выполнения
Администратор сервера в консоли вводит команду создания нового экземпляра СМЭВ QL с указанием имени:
java -jar smevql-server-all.jar new <new-app-name>
Система выполняет создание экземпляра СМЭВ QL сервера с заданным именем:
если во время выполнения команды возникла ошибка, то сценарий завершается с результирующим состоянием 2;
иначе, команда выполнена успешно, создана первичная структура папок и файлов, завершение сценария с результирующим состоянием 1.
Результирующее состояние:
СМЭВ QL сервер успешно запущен, создана первичная структура папок и файлов.
Ошибка выполнения команды.
Первичная структура папок и файлов
Название |
Тип |
Описание |
Уровень вложенности |
|---|---|---|---|
application.yaml |
yaml-file |
Файл с описанием настроек СМЭВ QL сервер (подробнее см. Конфигурирование сервера) |
1 |
credentials.yaml |
yaml-file |
Файл с описанием представления СМЭВ QL сервер (подробнее см. Конфигурирование сервера) |
1 |
logs |
folder |
Папка с лог-файлами СМЭВ-QL сервер |
1 |
models |
folder |
Папка с описанием моделей данных |
1 |
readme.md |
md-file |
read-файл в формате markdown, описывает основные функции СМЭВ QL |
1 |
smevql.jar |
jar-file |
Jar-файл с кодом СМЭВ QL |
1 |
sources |
folder |
Папка с описанием источников данных |
1 |
states |
folder |
Папка с описанием машин состояний |
1 |
Название |
Тип |
Описание |
Уровень вложенности |
|---|---|---|---|
base |
folder |
Папка с версиями описания структуры базовой модели данных |
2 |
|
symlink |
Ссылка на папку модели по умолчанию |
3 |
|
folder |
Папка с версией базовой модели данных |
3 |
|
yaml-file |
Файл с описанием базовой модели данных |
4 |
custom |
folder |
Папка с версиями описания пользовательской модели данных |
2 |
|
symlink |
Ссылка на папку модели по умолчанию |
3 |
|
folder |
Папка с версией базовой модели данных |
3 |
|
yaml-file |
Файл с описанием базовой модели данных |
4 |
Название |
Тип |
Описание |
Уровень вложенности |
|---|---|---|---|
current (symlink) |
symlink |
Ссылка на папку модели по умолчанию |
2 |
1.0 |
folder |
Папка с версией модели источников |
3 |
|
yaml-file |
Файл с описанием модели источников |
4 |
Название |
Тип |
Описание |
Уровень вложенности |
|---|---|---|---|
environment_name.log |
log-file |
Лог-файл СМЭВ QL |
2 |
Содержимое папки states:
По умолчанию, пустая папка, содержимое заполняется в процессе создания машин-состояний.
4.1.2. Конфигурирование СМЭВ-QL сервер
Пример конфигурации файла application.yml для СМЭВ QL сервера см. в разделе Конфигурирование сервера Руководства администратора.
4.1.3. Запуск, остановка, перезапуск приложения СМЭВ QL сервер
Примеры команд и их описание приведено в Быстрый старт.
4.1.4. Генерация OpenAPI СМЭВ-QL
Раздел в разработке
4.1.5. Регистрация OpenAPI СМЭВ QL в ПОДД СМЭВ4
Раздел в разработке
4.2. Работа с моделями
Раздел в разработке
4.3. Работа с источниками данных
4.3.1. Создание модели источников данных
Данная функция позволяет добавлять новую версию описания модели источников данных СМЭВ-QL. В качестве источников данных для СМЭВ-QL сервер могут выступать:
REST-интерфейс витрины данных (Prostore);
Другой СМЭВ-QL сервер
Модель источников данных СМЭВ-QL хранится в файловой системе СМЭВ-QL сервера по пути: sources/custom/1.0/source.yaml
Общий сценарий выполнения
Администратор сервера в консоли вводит команду генерации новой пустой модели источника: ./smevql g source <source-name>
Система создаёт новую версию папки и файла модели источника с пустыми значениями - source.yaml
Администратор сервера открывает на редактирование файл модели источника source.yaml и заполняет параметры необходимыми значениями.
Рисунок - 4.22 Создание модели источников данных
Структура source.yaml
Описание источника данных в формате YAML имеет следующую структуру:
prostore_source:
type: rest
version: 1.0
adapter: prostore
protocol: http
host: localhost
port: 9090
path: api/v1/datamarts/query?format=json
template: '{ "query": "%{request}", "queryId": "%{request_id}" }'
payload-path: result
headers:
- accept: application/json
- content-type: application/json
threads-count: 10
connection-timeout: 0
smevql_server_source:
type: rest
version: 1.0
adapter: smevql
protocol: https
host: localhost
port: 9091
path: api/query?format=json
template: '{ "query": "%{request}" }'
payload-path: result
headers:
- accept: application/json
- content-type: application/json
В рамках файла source.yaml источник всегда имеет название с постфиксом _source. При этом именем источника в моделях данных
считается часть БЕЗ учета данного постфикса.
То есть источник egrn_source в модели данных model.yaml необходимо указывать как egrn.
Загрузка модели источников
Источники данных считываются, валидируются и загружаются в память из папки sources при запуске СМЭВ QL сервера.
По-умолчанию используется версия источника, на которую ссылается symlink current, при его отсутствии по-умолчанию
считается старшая версия.
Источники и версии, начинающиеся с подчеркивания (_) НЕ загружаются, они находятся в стадии проектирования.
4.4. Работа с картами машин состояний
Раздел в разработке
4.5. Обработка входящего REST-запроса изменения данных витрины
Раздел в разработке
4.6. Уведомления при изменении данных витрины (push-сервис)
Раздел в разработке