Обновляет указанный автоматически применяемый тег.
Запрос использует и создает в качестве полезной нагрузки application/json
формат.
PUT | АппОптима | https://{your-domain}/e/{your-environment-id}/api/config/v1/autoTags/{id}
|
Среда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/autoTags/{id}
|
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия. WriteConfig
Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Параметры
Обратитесь к моделям JSON , чтобы найти все модели JSON, которые зависят от типа модели.
Параметр | Тип | Описание | In | Необходимость |
---|---|---|---|---|
id | string | Идентификатор автотега, который необходимо обновить.
Если вы также устанавливаете идентификатор в теле сообщения, он должен совпадать с этим идентификатором. |
path | необходимый |
body | AutoTag | Тело JSON запроса. Содержит обновленные параметры автотега. | body | необязательный |
Объекты тела запроса
Объект AutoTag
Конфигурация автотега. Он определяет условия использования тега и значение тега.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
metadata | ConfigurationMetadata | Метаданные, полезные для отладки | необязательный |
id | string | Идентификатор автотега. | необязательный |
name | string | Имя автотега, который применяется к объектам.
Кроме того, вы можете указать формат значения в правиле тега. В этом случае тег используется в Например, вы можете расширить |
необходимый |
description | string | Описание автотега. | необязательный |
rules | AutoTagRule[] | Список правил использования тегов.
При наличии нескольких правил применяется логика ИЛИ. |
необязательный |
entitySelectorBasedRules | EntitySelectorBasedAutoTagRule[] | Список правил на основе селектора объектов для использования автоматической пометки.
Если указано несколько правил, применяется логика ИЛИ . |
необязательный |
Объект ConfigurationMetadata
Метаданные, полезные для отладки
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
configurationVersions | integer[] | Отсортированный список номеров версий конфигурации. | необязательный |
currentConfigurationVersions | string[] | Отсортированный список номеров версий конфигурации. | необязательный |
clusterVersion | string | Версия АппОптима. | необязательный |
Объект AutoTagRule
Правило для автоматической пометки.
Определяет условия использования тега.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
type | string | Тип объектов, к которым применяется правило.
Элемент может содержать эти значения
|
необходимый |
enabled | boolean | Правило тегов включено ( true ) или отключено ( false ).
|
необходимый |
valueFormat | string | Значение автотега. Если указано, тег используется в name:valueFormat формате.
Например, вы можете расширить Здесь вы можете использовать следующие заполнители:
|
необязательный |
normalization | string | Изменения, примененные к значению после применения формата значения. По умолчанию LEAVE_TEXT_AS_IS.
Элемент может содержать эти значения
|
необязательный |
propagationTypes | string[] | Как применить тег к базовым объектам:
Элемент может содержать эти значения
|
необязательный |
conditions | EntityRuleEngineCondition[] | Список правил сопоставления для автоматической пометки.
Тег применяется только при выполнении всех условий. |
необходимый |
Объект _ EntityRuleEngineCondition
Условие определяет, как выполнять логику сопоставления для сущности.
Элемент | Тип | Описание | Необходимый |
---|---|---|---|
ключ | Ключ условия | Ключ для идентификации данных, которые мы сопоставляем.
Фактический набор полей и возможных значений зависит от типа ключа. Список актуальных объектов ищите в описании поля типа или смотрите модели JSON . |
необходимый |
сравнениеИнформация | Основное сравнение | Определяет, как на самом деле выполняется сопоставление: что и как мы сравниваем.
Фактический набор полей и возможные значения поля оператора зависят от типа сравнения. Список актуальных объектов ищите в описании поля типа или смотрите модели JSON . |
необходимый |
Объект _ ConditionKey
Ключ для идентификации данных, которые мы сопоставляем.
Фактический набор полей и возможных значений зависит от типа ключа. Список актуальных объектов ищите в описании поля типа или смотрите модели JSON .
Элемент | Тип | Описание | Необходимый |
---|---|---|---|
атрибут | нить | Атрибут, который будет использоваться для сравнения.
Элемент может содержать эти значения
|
необходимый |
тип | нить | Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
Элемент может содержать эти значения
|
необязательный |
Объект _ ComparisonBasic
Определяет, как на самом деле выполняется сопоставление: что и как мы сравниваем.
Фактический набор полей и возможные значения поля оператора зависят от типа сравнения. Список актуальных объектов ищите в описании поля типа или смотрите модели JSON .
Элемент | Тип | Описание | Необходимый |
---|---|---|---|
оператор | нить | Оператор сравнения. Вы можете изменить его, установив отрицание в true .
Возможные значения зависят от типа сравнения. Найдите список актуальных моделей в описании поля типа и проверьте описание нужной вам модели. |
необходимый |
ценить | объект | Значение для сравнения. | необязательный |
отрицать | логический | Отменяет оператор сравнения . Например, он превращает начинается с в не начинается с . | необходимый |
тип | нить | Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
Элемент может содержать эти значения |
необходимый |
Объект _ EntitySelectorBasedAutoTagRule
Основанное на селекторе объектов правило для автоматического использования тегов. Он позволяет помечать объекты с помощью селектора объектов.
Элемент | Тип | Описание | Необходимый |
---|---|---|---|
включено | логический | Правило включено ( true ) или отключено ( false ).
|
необязательный |
селектор объектов | нить | Строка селектора объектов, по которой выбираются объекты. | необходимый |
формат значения | нить | Значение автотега на основе селектора объектов. Если указано, тег используется в name:valueFormat формате.
Например, вы можете расширить |
необязательный |
нормализация | нить | Изменения, примененные к значению после применения формата значения. По умолчанию LEAVE_TEXT_AS_IS.
Элемент может содержать эти значения
|
необязательный |
JSON-модель тела запроса
Это модель тела запроса, показывающая возможные элементы. Его необходимо настроить для использования в реальном запросе.
<{ "name": "sampleAutoTag", "description": "sampleDescription", "rules": [ { "type": "SERVICE", "enabled": true, "valueFormat": "myTagValue {Service:DetectedName}", "propagationTypes": [ "SERVICE_TO_HOST_LIKE" ], "conditions": [ { "key": { "attribute": "SERVICE_DATABASE_NAME" }, "comparisonInfo": { "type": "STRING", "operator": "BEGINS_WITH", "value": "sample", "negate": false, "caseSensitive": false } }, { "key": { "attribute": "SERVICE_WEB_SERVER_NAME" }, "comparisonInfo": { "type": "STRING", "operator": "EXISTS", "negate": false } }, { "key": { "attribute": "PROCESS_GROUP_CUSTOM_METADATA", "type": "PROCESS_CUSTOM_METADATA_KEY", "dynamicKey": { "source": "KUBERNETES", "key": "kubernetes.io/limit-ranger" } }, "comparisonInfo": { "type": "STRING", "operator": "BEGINS_WITH", "value": "sample", "negate": false, "caseSensitive": false } } ] } ], "entitySelectorBasedRules": [ { "enabled": true, "entitySelector": "type(HOST) AND cpuCores(4)" } ] }
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
201 | Краткое представление объекта | Успех. Новый автотег создан. Тело ответа содержит идентификатор нового автотега. |
204 | Успех. Автотег обновлен. Ответ не имеет тела. | |
400 | ErrorEnvelope | Неуспешный. Ввод недействителен. |
Объекты тела ответа
Объект _ EntityShortRepresentation
Краткое представление объекта АппОптима.
Элемент | Тип | Описание |
---|---|---|
идентификатор | нить | Идентификатор объекта АппОптима. |
имя | нить | Имя объекта АппОптима. |
описание | нить | Краткое описание сущности АппОптима. |
JSON-модель тела ответа
<{ "id": "6a98d7bc-abb9-44f8-ae6a-73e68e71812a", "name": "Astromkey entity", "description": "Astromkey entity for the REST API example" }
Проверить полезную нагрузку
Мы рекомендуем вам проверить полезную нагрузку перед ее отправкой с фактическим запросом. Код ответа 204 указывает на действительную полезную нагрузку.
Запрос потребляет application/json
полезную нагрузку.
POST | АппОптима | https://{your-domain}/e/{your-environment-id}/api/config/v1/autoTags/{id}/validator
|
Среда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/autoTags/{id}/validator
|
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия. WriteConfig
Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
204 | Подтверждено. Представленная конфигурация действительна. Ответ не имеет тела. | |
400 | ErrorEnvelope | Неуспешный. Ввод недействителен. |
Пример
В этом примере запрос обновляет автотег Инфраструктура — Linux из примера запроса GET .
Начальная конфигурация следующая:
Запрос добавляет дополнительное условие к существующему правилу для значения тега prod , дополнительно требуя, чтобы имя группы хостов содержало production
.
Он также добавляет новое правило, которое присваивает значение тега preProd для хостов Linux с именами, начинающимися с PreProd .
Маркер API передается в заголовке авторизации .
Тело запроса длинное, поэтому оно усекается в разделе Curl . Полное тело см. в разделе Тело запроса . Вы можете скачать или скопировать образец тела запроса, чтобы попробовать его самостоятельно.
Curl
<curl -X PUT \ https://mySampleEnv.live.ruscomtech.ru/api/config/v1/autoTags/7c82c170-b380-4fa7-992a-453f3e73047b \ -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \ -H 'Content-Type: application/json' \ -d '{<truncated - see the Request body section > }'
URL-адрес запроса
https://mySampleEnv.live.ruscomtech.ru/api/config/v1/autoTags/7c82c170-b380-4fa7-992a-453f3e73047b
Тело запроса
<{ "name": "Infrastructure - Linux", "rules": [ { "type": "HOST", "enabled": true, "valueFormat": "prod", "propagationTypes": [], "conditions": [ { "key": { "attribute": "HOST_OS_TYPE" }, "comparisonInfo": { "type": "OS_TYPE", "operator": "EQUALS", "value": "LINUX", "negate": false } }, { "key": { "attribute": "HOST_NAME" }, "comparisonInfo": { "type": "STRING", "operator": "BEGINS_WITH", "value": "PreProd", "negate": true, "caseSensitive": true } }, { "key": { "attribute": "HOST_GROUP_NAME" }, "comparisonInfo": { "type": "STRING", "operator": "CONTAINS", "value": "production", "negate": false, "caseSensitive": true } } ] }, { "type": "HOST", "enabled": true, "valueFormat": "preProd", "propagationTypes": [], "conditions": [ { "key": { "attribute": "HOST_OS_TYPE" }, "comparisonInfo": { "type": "OS_TYPE", "operator": "EQUALS", "value": "LINUX", "negate": false } }, { "key": { "attribute": "HOST_NAME" }, "comparisonInfo": { "type": "STRING", "operator": "BEGINS_WITH", "value": "PreProd", "negate": false, "caseSensitive": true } } ] } ] }
Код ответа
204
Результат
Обновленный автотег имеет следующие параметры: