GET релизы

Материал из Документация Ключ-АСТРОМ


Список всех доступных выпусков.

Запрос создает application/jsonполезную нагрузку.

GET Managed https://{your-domain}/e/{your-environment-id}/api/v2/releases
Среда АктивногоШлюза https://{your-activegate-domain}/e/{your-environment-id}/api/v2/releases

Аутентификация

Чтобы выполstring этот запрос, вам нужен токен доступа с областью чтения релизов ( releases.read) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .

Параметры

Параметр Тип Описание В Необходимый
from string Начало запрошенного таймфрейма.

Вы можете использовать один из следующих форматов:

  • Отметка времени в миллисекундах UTC.
  • Человекочитаемый формат 2021-01-25T05:57:01.123+01:00. Если часовой пояс не указан, используется UTC. Вы можете использовать пробел вместо T. Секунды и доли секунды не являются обязательными.
  • Относительный таймфрейм, назад. Формат: now-NU/A, где Nколичество времени, Uединица времени и Aвыравнивание. Выравнивание округляет все меньшие значения до ближайшего нуля в прошлом. Например, now-1y/wэто один год назад, выровненный на неделю. Вы также можете указать относительный таймфрейм без выравнивания: now-NU. Поддерживаемые единицы времени для относительного таймфрейма:
    • m: минуты
    • h: часы
    • d: дни
    • w: недели
    • M: месяцы
    • y: годы

Если не задано, используется относительный двухнедельный таймфрейм ( now-2w).

запрос по желанию
to string Конец запрошенного периода времени.

Вы можете использовать один из следующих форматов:

  • Отметка времени в миллисекундах UTC.
  • Человекочитаемый формат 2021-01-25T05:57:01.123+01:00. Если часовой пояс не указан, используется UTC. Вы можете использовать пробел вместо T. Секунды и доли секунды не являются обязательными.
  • Относительный таймфрейм, назад. Формат: now-NU/A, где Nколичество времени, Uединица времени и Aвыравнивание. Выравнивание округляет все меньшие значения до ближайшего нуля в прошлом. Например, now-1y/wэто один год назад, выровненный на неделю. Вы также можете указать относительный таймфрейм без выравнивания: now-NU. Поддерживаемые единицы времени для относительного таймфрейма:
    • m: минуты
    • h: часы
    • d: дни
    • w: недели
    • M: месяцы
    • y: годы

Если не установлено, используется текущая метка времени.

запрос по желанию
nextPageKey string Курсор для следующей страницы результатов. Вы можете найти его в поле nextPageKey предыдущего ответа.

Первая страница всегда возвращается, если вы не укажете параметр запроса nextPageKey .

Когда nextPageKey настроен на получение последующих страниц, вы должны опустить все остальные параметры запроса.

запрос по желанию
pageSize integer Количество релизов в полезной нагрузке одного ответа.

Максимально допустимый размер страницы — 1000.

Если не установлено, используется 100.

запрос по желанию
demo boolean Получите ваши Релизы ( false) или набор демонстрационных Релизов ( true). запрос по желанию
releasesSelector string Определяет область запроса. В ответ включаются только Релизы, соответствующие указанным критериям.

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

  • Зона управления: тип(PROCESS_GROUP_INSTANCE),mzName("ManagementZone-A"). Фильтры для всех выпусков в данной зоне управления. Фильтр чувствителен к регистру.
  • Состояние мониторинга: MonitoringState("Активно") или MonitoringState("Неактивно"). Вы можете указать только одно состояние мониторинга.
  • Состояние работоспособности: HealthState("ЗДОРОВО") или HealthState("НЕЗДОРОВО"). Можно указать только одно состояние работоспособности.
  • Уязвимость системы безопасности: затронутаяBySecurityProblem("Обнаружена") или затронутаяBySecurityProblem("Не обнаружена"). Вы можете указать только одно состояние уязвимости безопасности.
  • Имя: имя_сущности("имя"). Фильтры для всех выпусков, которые содержат данное значение в своем имени. Фильтр нечувствителен к регистру.
  • Идентификатор объекта: entityId("id").
  • Продукт: ReleasesProduct("продукт"). Фильтры для всех выпусков, которые содержат данное значение в своем продукте. Фильтр нечувствителен к регистру.
  • Стадия: releasesStage("этап"). Фильтры для всех выпусков, которые содержат данное значение на своем этапе. Фильтр нечувствителен к регистру.
  • Версия: ReleasesVersion("версия"). Фильтры для всех выпусков, которые содержат данное значение в своей версии. Фильтр нечувствителен к регистру.

Чтобы задать несколько критериев, разделите их запятой (,). В ответ включаются только результаты, соответствующие всем критериям. например, .../api/v2/releases?releasesSelector=name("Сервер"),monitoringState("Активный"),healthState("ЗДОРОВЫЙ"),releasesVersion("1.0.7").

Специальные символы ~ и " необходимо экранировать с помощью символа ~ (например, поиск в двойных кавычках entityName("~"")).

запрос по желанию
sort string Указывает поле, используемое для сортировки списка релизов. Поле имеет знаковый префикс (+/-), который соответствует порядку сортировки («+» по возрастанию и «-» по убыванию). Если префикс знака не установлен, будет применяться порядок сортировки по возрастанию по умолчанию. Вы можете сортировать по следующим свойствам:
  • 'product': название продукта
  • 'name': название выпуска
  • 'stage': сценическое имя
  • 'version': версия
  • 'instances': экземпляры
  • 'traffic': Трафик

Если не задано, применяется сортировка имени по возрастанию.

запрос по желанию

Ответ

Коды ответов

Код Тип Описание
200 Releases Успех
400 ErrorEnvelope Не удалось. Ввод недействителен.

Объекты тела ответа

Объект Releases

Список релизов.

Элемент Тип Описание
releases Release[] Список релизов.
releasesWithProblems integer Количество релизов с проблемами.
nextPageKey string Количество записей на странице.
pageSize integer Курсор для следующей страницы результатов. Имеет значение nullна последней странице.

Используйте его в параметре запроса nextPageKey для получения последующих страниц результата.

totalCount integer Общее количество записей в результате.

Объект Release

Содержит данные, относящиеся к одному выпуску компонента. Релиз — это комбинация компонента и версии. Компонент может быть любой формой развертывания, которая может быть связана с версией. В первом наброске Компонент всегда является Сервисом.

Запись <name, product, stage, version> всегда уникален.

Элемент Тип Описание
releaseEntityId string Идентификатор объекта коррелирующего выпуска.
securityVulnerabilitiesCount integer Количество уязвимостей безопасности объекта
affectedByProblems boolean У объекта есть одна или несколько проблем
securityVulnerabilitiesEnabled boolean Указывает, что функция уязвимостей безопасности включена.
affectedBySecurityVulnerabilities boolean Объект имеет одну или несколько уязвимостей безопасности
throughput number Количество байтов в секунду объекта
softwareTechs SoftwareTechs[] Программные технологии выпуска
product string Название продукта
instances ReleaseInstance[] Экземпляры entityId, включенные в этот выпуск
version string Идентифицированная версия выпуска
running boolean Соответствующий PGI все еще работает/отслеживается
problemCount integer Количество проблем объекта
stage string Имя стадии
name string Имя объекта

Объект SoftwareTechs

Содержит информацию об используемой программной технологии.

Элемент Тип Описание
edition string Тип технологии.
verbatimType string Издание техники.
technology string Дословный тип технологии.
version string Версия технологии.

Объект ReleaseInstance

Содержит данные, относящиеся к одному экземпляру выпуска. Экземпляр является экземпляром группы процессов и имеет необязательную версию сборки.

Элемент Тип Описание
buildVersion string Версия сборки
securityVulnerabilities string [] Список идентификаторов уязвимостей безопасности
entityId string Идентификатор сущности экземпляра.
problems string [] Список идентификаторов событий открытых проблем

JSON-модель тела ответа

{
  "releases": [
    {
      "securityVulnerabilitiesCount": 4,
      "releaseEntityId": "PROCESS_GROUP-DFDBAC9CBF104253",
      "throughput": 923234,
      "securityVulnerabilitiesEnabled": true,
      "affectedBySecurityVulnerabilities": true,
      "softwareTechs": [
        {
          "technology": "JAVA",
          "edition": "OpenJDK",
          "version": "1.8.0_242",
          "verbatimType": "Java"
        }
      ],
      "affectedByProblems": true,
      "product": "Sockshop",
      "instances": [
        "PROCESS_GROUP_INSTANCE-49D94B90FB71C45B",
        "PROCESS_GROUP_INSTANCE-7EA049157C82D1A5"
      ],
      "running": true,
      "name": "cluster",
      "version": "1.195.34.12341232423-012342",
      "problemCount": 4,
      "stage": "staging"
    }
  ],
  "releasesWithProblems": 1,
  "pageSize": 1,
  "nextPageKey": "AQAAABQBAAAABQ==",
  "totalCount": 1
}