API автоматически применяемых тегов - PUT автоматический тег
Обновляет указанный автоматически применяемый тег.
Запрос использует и создает в качестве полезной нагрузки application/json
формат.
PUT | Ключ-АСТРОМ Managed | 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 | Ключ-АСТРОМ Managed | 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
Результат
Обновленный автотег имеет следующие параметры: