Работа со SberWorks Meta

Авторизация в системе META.Hub

Для авторизации в системе:
  1. Перейдите на страницу авторизации.

Увеличить

  1. В соответствующие поля введите логин и пароль для входа в систему.
  2. Нажмите кнопку Войти.
После успешного входа в систему откроется стартовая страница — страница универсального поиска.

Увеличить

Смена транспортного (временного) пароля

Администратор присваивает транспортный пароль всем новым пользователям. Этот пароль должен быть изменён при первичном входе в систему.
Для смены транспортного пароля:
  1. Перейдите на страницу авторизации в систему.
  2. Введите логин и транспортный пароль.
  3. В открывшейся форме заполните поля:
  • текущий пароль — введите транспортный пароль, присвоенный администратором.
  • новый пароль — введите новый пароль, отвечающий требованиям информационной безопасности:
    • длина не менее 8 символов;
    • пароль одновременно содержит цифры, специальные символы (! @ # $ % ^ & * ( ) _ + = -".), строчные и прописные буквы;
    • пароль не совпадает с текущим паролем и именем учётной записи (логином);
  • новый пароль еще раз — введите новый пароль повторно;
  • нажмите кнопку Сменить;
  • на странице появится сообщение: «Пароль изменен. Войдите в систему с новым паролем».

Увеличить

ID Компонента (meta.componentId)

На главной странице в строку поиска введите данные (rus или eng) для поиска наименования своего компонента и нажмите Enter.
Следует помнить, что при вводе 3-ёх и 5 символов запускается процедура автоподбора похожих (подходящих) результатов.

Увеличить

Перейдите в раздел Компоненты, где отображается список компонентов, найденных по заданным параметрам поиска.

Увеличить

Код компонента (в примере APP712.01) указывается в результатах поиска в строке Код. Данный код необходимо указать в свойстве meta.componentId — ID Компонента.

Увеличить

Если по результатам поиска вы нашли несколько компонентов, то обратите внимание на их тип или уточните правильный вариант для использования у Администратора ГИС.
Если отображаемой информации недостаточно, раскройте блок Подробнее о компоненте, в котором отобразится подробная информация о компоненте.
Чтобы вернуться к главной странице работы с системой, нажмите кнопку Вернуться.

Работа с отчётами

  1. Авторизуйтесь в системе.
  2. Перейдите в раздел Отчёты.

    Увеличить

  3. На открывшейся странице заполните параметры формирования отчета.
  4. Нажмите кнопку Сформировать для формирования отчета или кнопку Очистить фильтр для очистки выбранных параметров.
  5. Сформированный отчёт сохранится на ПК в папке Загрузки.

Увеличить

Параметры отчётов (применимы ко всем видам отчётов) приведены в таблице ниже.
Наименование параметраОписание
Система
Множественный выбор. Допустимые значения: АС ИРД, ППРБ, ЕФС
Тип компонента
Множественный выбор. Допустимые значения: БПС, ФС, ПФ, БХ, БФС, Системные, ПУчС, ТС, Java
Архитектурный статус
Множественный выбор. Значения: Целевой, Нецелевой, Отклонён, Не установлен
Название компонента
Фильтр по всем названиям компонентов
Доступные виды отчетов представлены в таблице ниже.
НаименованиеРасшифровкаФормат
Сводный отчёт по методам
Информация по API и версиям API в одной таблице с группировкой по компонентамXLS
Детальный отчет по методам
Детализированная информация по APIXLS
Отчет по НФТ
Нефункциональные требования по компонентам ППРБXLS
Свойства классов моделей данных, разрешенные к отправке в ФД
Информация о свойствах классов модели данных компонента, размеченных в МЕТА как разрешенные для дальнейшего использования в корпоративной аналитической платформе (фабрике данных)XLS
Сводный отчет по методам представлен в таблице ниже.
ПоказательКомментарии
Наименование АС
АС, в составе которой находится компонент
Код компонента
Код компонента, по которому формируются итоги
Наименование компонента
Логическое наименование компонента

Работа с сервисом META.Mock

Для авторизации в МЕТА.Mock — централизованного сервиса заглушек API, авторизуйтесь в META.Hub.
Для перехода к интерфейсу МЕТА.Mock выберите соответствующий пункт в верхней части страницы.

Увеличить

Откроется стартовая страница МЕТА.Mock.

Увеличить

Для выхода из МЕТА.Mock (возврата к МЕТА.Hub) на боковой панели нажмите кнопку Перейти в META.Hub. В результате откроется стартовая страница МЕТА.Hub.

Увеличить

Для работы с сервисом заглушек необходимо создать для пользователя проектную область. Создание, редактирование и удаление проектной области выполняется пользователем с ролью Администратор.
Для создания (добавления) проектной области:
  1. Перейдите на вкладку Проектные области.
  2. Нажмите кнопку Добавить проектную область.

    Увеличить

  3. В открывшейся форме Создание проектной области заполните все поля:
  • В поле Имя введите название проектной области.
  • В поле Описание введите описание проектной области.
  • В поле Базовая url оставьте значение по умолчанию.
  • В поле Пользователи введите логин пользователя проектной области (можно указать несколько пользователей для одной проектной области).
  • В поле Эмуляция заглушки выберите тип эмуляции заглушки в представленной версии доступен только тип REST.

    Увеличить

Для создания новой проектной области нажмите кнопку Сохранить. При этом в списке проектных областей появится новый элемент.
Чтобы отменить создание, нажмите кнопку Отмена.
Если одно или несколько полей формы Создание проектной области будут не заполнены, под каждым пустым полем появится соответствующее сообщение.

Увеличить

Для редактирования проектной области:
  1. Перейдите на вкладку Проектные области.
  2. Нажмите кнопку Редактировать справа от нужной проектной области.

    Увеличить

  3. В открывшейся форме Редактирование проектной области внесите изменения в необходимые поля.

    Увеличить

  4. Для сохранения внесенных изменений нажмите кнопку Сохранить. Чтобы отменить редактирование, нажмите кнопку Отмена.
Для удаления проектной области:
  1. Перейдите на вкладку Проектные области.
  2. Нажмите кнопку Удалить справа от нужной проектной области.
  3. Подтвердите удаление в открывшемся окне. В результате проектная область будет удалена из списка.

    Увеличить

Для поиска проектной области:
  1. Перейдите на вкладку Проектные области.
  2. Введите в строку поиска имя проектной области.
  3. Нажмите Enter или нажмите кнопку Поиск.
Конфигурация транспорта проектной области выполняется авторизованным пользователем.
Для просмотра конфигурации транспорта проектной области:
  1. На стартовой странице МЕТА.Mock выберите нужную проектную область.
  2. Нажмите кнопку в правом верхнем углу страницы.

    Увеличить

  3. Откроется страница Конфигурация транспорта проектной области. На странице представлены конфигурационные параметры выбранной проектной области (в представленной версии доступен только тип REST).

    Увеличить

Для добавления новой RESТ-заглушки:
  • На странице выбранной проектной области в меню Добавить выберите пункт RESТ-эмуляция.

    Увеличить

  • В результате откроется форма создания новой заглушки.

    Увеличить

  • В открывшейся форме заполните поля:
    • В поле Наименование введите наименование заглушки;
    • В поле Endpoint URL введите значение, уникальное для REST-заглушек в выбранной проектной области (должно начинаться с символа "/"). Примечание: эти поля можно автоматически заполнить данными существующего REST API, выполнив его поиск в базе МЕТА через поле поиска.
    • Выберите HTTP-метод: GET (значение по умолчанию), POST, PUT, DELETE, PATCH.
    • Из списка Код ответа выберите одно из стандартных для HTTP-протокола значений, которое эмуляция должна возвращать в ответе на запрос (по умолчанию установлен код 200:ОК).
    • В средней части экранной формы на вкладках установите при необходимости значения необязательных параметров REST-эмуляции.
    • На вкладке Headers с помощью кнопки Добавить заголовок задайте заготовки, которые будет возвращать эмуляция в ответе. Управлять созданными заголовками (удалять, изменять, отключать) можно через Список заголовков.

    Увеличить

  • На вкладке Cookies с помощью кнопки Добавить Cookie задайте параметры cookie, которые будет возвращать эмуляция в ответе. Управлять созданными cookie (удалять, изменять, отключать) можно через Список Cookies.

    Увеличить

  • На вкладке Credentials установите полномочия на обращение к этой эмуляции.
  • Если это не было сделано ранее для данной проектной области, задайте параметры авторизации: нажмите кнопку Администрирование и на открывшейся форме Список прав создайте пару логин/пароль.

    Увеличить

  • После этого из созданного списка может выбран и сохранен произвольный перечень полномочий (пар логин/пароль) для текущей эмуляции. Впоследствии управлять полномочиями ранее созданной эмуляции (удалять или отключать) можно через вкладку Список Credentials.

    Увеличить

  • В случае использования для этой эмуляции модели машинного обучения, на вкладке Machine Learning установите переключатель использовать ML в положение Включен и из раскрывающегося списка выберите необходимый ML-запрос, если он был ранее создан и прошел процедуру обучения модели.
  • В случае использования переменных в тексте эмуляции, на вкладке Область переменных задайте (выберите из раскрывающегося списка) ранее созданную область переменных. Если область переменных не была определена, с этой же экранной формы перейдите к созданию новой области и описанию ее переменных.
  • После этого из созданного списка может выбран и сохранен произвольный перечень полномочий (пар логин/пароль) для текущей эмуляции. Впоследствии управлять полномочиями ранее созданной эмуляции (удалять или отключать) можно через вкладку Credentials.

    Увеличить

  • На вкладке События задайте Лимит запросов — ограничение на количество обращений к создаваемой заглушке в минуту и (или) в час. При превышении этих значений пользователь получит уведомление.
  • На вкладке Прочее:
    • задайте таймаут для эмуляции задержки ответа;
    • определите видимость эмуляции (оставьте приватной и доступной только для пользователей текущей проектной области или сделайте публичной и разрешите просматривать и переиспользовать любым зарегистрированным пользователям);
    • включите или отключите сохраненную эмуляцию.

    Увеличить

  • Выберите Тип шаблона:
    • Groovy;
    • Json;
    • Xml.
  • Если в необязательных параметрах на вкладке Machine Learning переключатель использовать ML находится в положении Выключен, заполните поле Текст эмуляции.

    Увеличить

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

Увеличить

Поиск API и генерация шаблона REST-заглушки

Действие выполняется авторизованным пользователем.
Для добавления новой RESТ-заглушки с использованием поиска API и сгенерированного шаблона:
  1. На странице выбранной проектной области в меню Добавить выберите пункт RESТ-эмуляция.

    Увеличить

В результате откроется форма создания новой заглушки:

Увеличить

  1. В открывшейся форме заполните поля:
    • В поле Наименование введите наименование заглушки.
    • В поле поиска введите нужное значение.

    Увеличить

  2. Из раскрывающегося списка с результатами поиска выберите необходимый метод API. На форме создания заглушки будут автоматически заполнены поля Endpoint URL и HTTP-метод.
  3. В поле Тип шаблона выберите значение Json.
  4. Для создания новой заглушки нажмите кнопку Сохранить. Чтобы отменить создание, нажмите кнопку Отмена.
  5. В списке заглушек выбранной проектной области появится созданная заглушка.

Генерация REST-заглушки по спецификации OpenAPI v3

Если у пользователя есть файл спецификации API в формате OAS3 (OpenAPI Specification), то в META.Mock доступна генерация REST-эмуляции на его основе.
Для генерации REST-эмуляции по файлу спецификации необходимо:
  • На экранной форме Проектной области нажать кнопку Загрузить OAS3 и выбрать локальный файл спецификации (поддерживается спецификация в формате yaml или json).

    Увеличить

При загрузке файла автоматически будет выполнена его проверка на соответствие формату (при некорректном формате пользователю возвращается сообщение с указанием причины отказа в создании эмуляции). При успешной проверке файла на соответствие формату выполняется проверка на наличие в текущей Проектной области эмуляций, описанных в спецификации (если эмуляции с описанными в спецификации параметрами уже есть — пользователю возвращается сообщение с указанием причины отказа в создании эмуляции). Если предыдущие проверки пройдены — автоматически создаются REST-эмуляции согласно описанным в спецификации параметрам: пользователю возвращается сообщение об успешном создании эмуляций, созданные эмуляции появляются в списке на экранной форме Проектной области. Они доступны для просмотра, редактирования и удаления.

Использование Statefull в REST-заглушке

Выполните следующие действия:
  1. Пройдите авторизацию и перейдите на стартовую страницу META.Mock.
  2. Создайте область переменных.
  3. Выберите из доступных любую проектную область с включенным транспортом REST. Если для данного пользователя доступных проектных областей с включенным транспортом REST нет, оформите заявку на создание проектной области.
  4. Нажмите кнопку Области переменных и перейдите к форме Список областей.
  5. Нажмите кнопку Создать новую область. В открывшейся форме Создание области заполните следующие поля:
    • Наименование области — Демонстрационная область;
    • Описание — Демонстрационная область переменных.
  6. Нажмите кнопку Добавить переменную.

    Увеличить

  • Введите параметры переменной:
    • Имя — var01;
    • Тип — Строка;
    • Значение — 0;
    • Переключатель Константа — выкл;
    • Описание — Демонстрационная переменная.

    Увеличить

Нажмите кнопку Сохранить. В списке переменных появится строка с новой переменной. Можно добавить необходимое количество других переменных (в том числе из файла), для данного примера достаточно одной.

Увеличить

  1. После завершения ввода переменных нажмите кнопку Сохранить. Отобразится форма Список областей с только что созданной областью переменных.
  2. В этой же проектной области создайте новую REST-эмуляцию со следующими параметрами:
    • Наименование эмуляции — Тестовая заглушка REST 1;
    • Endpoint URL — /mock007;
    • HTTP-метод — GET;
    • Использовать ML — выкл;
    • Включить — вкл;
    • Тип шаблона — groovy;
    • Область переменных — Демонстрационная область.
  3. Заполните поле Текст эмуляции следующим кодом:
def counter = Integer.valueOf(var01) ++counter var01 = counter return [ fromVar: var01 ]
Для завершения создания новой заглушки нажмите кнопку Сохранить. На странице проектной области появится новая строка с созданной заглушкой.
  1. На странице проектной области, в которой была создана REST-заглушка, нажмите кнопку для просмотра конфигурации транспорта проектной области. Откроется страница Конфигурация транспорта проектной области.
  2. Скопируйте URL транспорта для REST-эмуляции.
  3. Вставьте в адресную строку браузера скопированный URL транспорта, добавьте к нему Endpoint URL созданной REST-эмуляции (в данном примере это /mock007) и выполните HTTP-запрос. Браузер должен отобразить ответ эмуляции со значением переменной, добавленной на этапе создания области переменных.

Увеличить

При каждом следующем обращении к этой эмуляции (обновлении страницы браузера) groovy-скрипт из тела эмуляции будет увеличивать значение этой переменной и возвращать его в ответе эмуляции. Это означает, что созданная заглушка с groovy-скриптом и использованием переменной работает успешно.

Увеличить

Увеличить

Использование Groovy и FreeMarker в REST-заглушках

В REST-эмуляциях для формирования динамических данных в ответе на запрос можно воспользоваться двумя механизмами:
  • механизмом формирования данных на основе скрипта на языке программирования Groovy, в том числе с использованием Spring Cloud Contract DSL Response;
  • механизмом формирования данных при помощи движка шаблонов FreeMarker.

Использование Groovy в REST-эмуляциях

Для REST-эмуляций с типом шаблона Groovy в теле скрипта доступны для использования следующие переменные запроса:
  • query — Map<String, String> — query-параметры запроса;
  • path — List — сегменты пути запроса, относительно базового url проектной области;
  • headers — Map<String, String> — заголовки запроса;
  • body — в зависимости от Content-Type — тело запроса, если Content-Type application/jsonMap<String, Object>, String в ином случае response — ответ, содержащий:
    • response.headers — набор http-заголовков;
    • response.statusCode — http-status;
    • response.cookies — множество http-cookies.
При использовании динамических переменных в URL заглушки, например, /base/path/clientId/, имя переменной будет автоматически доступно в скрипте. Значение переменной будет взято из URL. Для запроса вида /base/path/clientId/1234567890 значение переменной dynamicValue будет равно 1234567890 в строковом представлении.
При использовании динамических переменных в URL заглушки, например, /base/path/clientId/ (помимо переменных запроса) в скрипте доступны все переменные из области переменных, к которой привязана конкретная эмуляция. Результат исполнения groovy-скрипта будет представлен в виде json, скрипт не должен возвращать null.
В случае, когда в скрипте должна быть реализована какая-либо сложная логика, писать скрипт можно локально в IDE, используя отладчик. При этом переменные из запроса (которые будут доступны в runtime) для локальной отладки можно захардкодить.

Использование Spring Cloud Contract DSL Response в REST-эмуляциях

Для REST-эмуляций с типом шаблона Groovy доступны SCC DSL Response.
Пример тела эмуляции с типом шаблона Groovy:
return ResponseDsl.make { status OK() body(value: "some value") headers { header(HttpHeaders.AUTHORIZATION, "Bearer token") } cookies { cookie("cookieName", "cookieValue") } }
В случае использования DSL скрипт тела эмуляции должен возвращать объект типа Response, полученный в результате вызова ResponseDsl.make {}.
В случае, если необходимо реализовать сложный сценарий, можно воспользоваться локальной отладкой скрипта, используя IDE и подключив туда зависимость GAV DSL, иначе он будет обрабатываться как обычная Groovy-заглушка.
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-contract-spec</artifactId>
<version>2.1.4.RELEASE</version> 
</dependency>
В теле SCC DSL Response доступны следующие параметры:
  • body(...) - тело ответа;
  • headers(...) - набор http-заголовков;
  • status(...) - http status.

Использование FreeMarker в REST-эмуляциях

Для REST-эмуляций с типом шаблона в форматах json и xml может быть использован синтаксис шаблонизатора FreeMarker. При этом в контексте шаблонизатора доступны следующие переменные из запроса:
  • request.query — Map<String, String> — query-параметры запроса;
  • request.path — List<String> — сегменты пути запроса, относительно базового url проектной области;
  • request.headers — Map<String, String> — заголовки запроса;
  • request.body — Map<String, Object> — тело запроса, доступно в случае, если тело запроса имеет тип application/json.
Также могут быть использованы статические методы из jdk c использованием statics, например:
${statics["java.util.UUID"].randomUUID().toString()}
Пример тела эмуляции с типом шаблона json или xml с использованием FreeMarker представлен ниже. Для проверки работы этой эмуляции в url должен присутствовать query-параметр:
count: emulation_url?count=3
{

"id": "${statics["java.util.UUID"].randomUUID().toString()}",

"result": {
"code": 200,
"message": "Ok",
"items": [
<#assign count = request.query['count']?number>
<#list 1..count as idx>
{
"index": ${idx},
"id": "${statics["java.util.UUID"].randomUUID().toString()}"
} <#if idx?is_last == false>,</#if>
</#list>]
}
В контексте шаблонизатора доступны все переменные из области переменных, к которой привязана конкретная эмуляция. Данные переменные можно использовать так же, как и переменные запроса с помощью синтаксиса: ${someVariable}.
В случае, если при вызове эмуляции необходимо обновлять и сохранять значения переменных, необходимо использовать предоставляемую сервисом директиву: <@saveVariables parameters/>.
Где parameters — набор сохраняемых переменных в формате "ключ=значение". Например, если начальное значение переменной someVariable равно 1, то, когда в теле заглушки присутствуют приведенные ниже инструкции, в результате каждого вызова эмуляции значение переменной будет увеличиваться:
<#assign countVar=someVariable?number>
<#assign countVar++>
<@saveVariables someVariable=countVar/>
Пример тела эмуляции с типом шаблона json или xml с использованием FreeMarker, инкрементирующий statefull-переменную count (эта переменная должна быть заведена в области переменных, к которой привязана заглушка), представлен ниже.
{
"id": "${statics["java.util.UUID"].randomUUID().toString()}",
"result": {
"code": "OK",
"message": "Count from request ${count}",
<#assign countVal=count?number>
<#assign countVal++>
"updated": "Count after increment ${countVal}"
<@saveVariables count=countVal/>
}
}

История вызовов

Историю и результаты вызова эмуляций в рамках проектной области можно посмотреть непосредственно в интерфейсе META.Mock.
Выполните действия:
  1. На экранной форме проектной области нажмите кнопку История.

    Увеличить

  2. На открывшейся экранной форме История представлен список записей об обращениях к эмуляциям, разделенный отдельно по каждому типу эмуляции (REST, MMT и КСШ/ESB).
  3. Выберите запись (соответствующую интересующему вас) вызову по типу эмуляции и времени ее вызова.

    Увеличить

  4. Нажмите на строку с выбранной записью — откроется форма со всеми параметрами вызова эмуляции и ее ответа.

    Увеличить

Чтобы предоставить возможность обращения к эмуляции тем, у кого нет доступа к данной проектной области, эмуляцию можно сделать публичной. В этом случае эмуляция будет доступна для просмотра всем пользователям META.Mock в каталоге Публичные проекты.
Чтобы сделать эмуляцию публичной, при ее создании или редактировании на вкладке Прочее в поле Видимость выберите значение PUBLIC_READONLY.

Увеличить

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

Увеличить

На экранной форме проектной области, содержащей публичные эмуляции, отображается их список.

Увеличить

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

Увеличить

Для редактирования заглушки:
  1. На стартовой странице МЕТА.Mock выберите из списка нужную заглушку.
  2. Нажмите кнопку Редактировать справа от заглушки. Откроется карточка заглушки с доступными для редактирования полями.

    Увеличить

    Увеличить

  3. Внесите необходимые изменения в значения полей.
  4. Для сохранения изменений нажмите кнопку Сохранить. Чтобы отменить изменения, нажмите кнопку Отмена.
Для удаления заглушки:
  1. На стартовой странице МЕТА.Mock выберите из списка необходимую заглушку.
  2. Нажмите кнопку Удалить справа от заглушки.

    Увеличить

  3. Подтвердите удаление, нажав кнопку ОК в открывшейся форме.

    Увеличить

Заглушка будет удалена из списка в текущей проектной области.

Увеличить

Предыдущий раздел
1.28 Проектирование API и архитектурного контроля
Следующий раздел
1.29 Управление сборкой ПО
Была ли страница полезной?