Создает новое правило события метрики.
Запрос создает и использует в качестве полезной нагрузки application/json
формат.
POST | АппОптима | https://{your-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents
|
Cреда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents
|
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия Запись конфигурации ( WriteConfig
) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Параметры
Чтобы найти все модели JSON, которые зависят от типа модели, обратитесь к моделям JSON .
Параметр | Тип | Описание | In | Необходимость |
---|---|---|---|---|
body | MetricEvent | Тело JSON запроса. Содержит параметры нового события метрики. | body | по желанию |
Объекты тела запроса
Объект MetricEvent
Конфигурация события метрики.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
metadata | ConfigurationMetadata | Метаданные, полезные для отладки | по желанию |
id | string | Идентификатор события метрики. | по желанию |
metricId | string | Идентификатор метрики, оцениваемой событием метрики. | по желанию |
metricSelector | string | Селектор метрик, который должен быть выполнен. | по желанию |
name | string | Имя события метрики, отображаемое в пользовательском интерфейсе. | требуется |
description | string | Описание события метрики. | требуется |
aggregationType | string | Как точки данных метрики агрегируются для оценки.
Временные ряды должны поддерживать эту агрегацию. Элемент может содержать эти значения
|
по желанию |
severity | string | Тип события, которое инициируется при нарушении порогового значения.
Тип Элемент может содержать эти значения
|
по желанию |
enabled | boolean | Событие метрики включено ( true ) или отключено ( false ).
|
требуется |
disabledReason | string | Причина автоматического отключения.
Конфигурация Элемент может содержать эти значения
|
по желанию |
warningReason | string | Причина предупреждения указана в конфиге.
В Элемент может содержать эти значения
|
по желанию |
alertingScope | MetricEventAlertingScope[] | Определяет область действия метрики. Допускается только один фильтр для каждого типа фильтра, за исключением тегов, где разрешено до 3. Фильтры объединяются конъюнкцией. | по желанию |
metricDimensions | MetricEventDimensions[] | Определяет параметры метрики для оповещения. Фильтры объединяются конъюнкцией. | по желанию |
monitoringStrategy | MetricEventMonitoringStrategy | Стратегия мониторинга для конфигурации события метрики.
Это базовая версия стратегии мониторинга, в зависимости от типа актуальный JSON может содержать дополнительные поля. |
требуется |
primaryDimensionKey | string | Определяет, какой ключ измерения следует использовать для alertingScope . | по желанию |
queryOffset | integer | Определяет смещение запроса для адаптации временных рамок оценки к известной задержке метрики. | по желанию |
Объект ConfigurationMetadata
Метаданные, полезные для отладки
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
configurationVersions | integer[] | Отсортированный список номеров версий конфигурации. | по желанию |
currentConfigurationVersions | string[] | Отсортированный список номеров версий конфигурации. | по желанию |
clusterVersion | string | Версия АппОптима. | по желанию |
Объект MetricEventAlertingScope
Единый фильтр для области оповещения.
Фактический набор полей зависит от типа фильтра. Найдите список актуальных объектов в описании поля filterType или см. Обнаружение аномалий событий метрик API — JSON модель .
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
filterType | string | Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
Элемент может содержать эти значения
|
требуется |
Объект MetricEventDimensions
Единый фильтр для измерений показателей.
Фактический набор полей зависит от типа фильтра. Найдите список актуальных объектов в описании поля filterType или см. Обнаружение аномалий событий метрик API — JSON модель .
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
filterType | string | Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
Элемент может содержать эти значения
|
требуется |
key | string | Ключ размеров на метрике. | по желанию |
Объект MetricEventMonitoringStrategy
Стратегия мониторинга для конфигурации события метрики.
Это базовая версия стратегии мониторинга, в зависимости от типа актуальный JSON может содержать дополнительные поля.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
type | string | Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
Элемент может содержать эти значения
|
требуется |
JSON-модель тела запроса
Это модель тела запроса, показывающая возможные элементы. Его необходимо настроить для использования в реальном запросе.
<{ "metadata": { "configurationVersions": [ 4, 2 ], "clusterVersion": "Mock version" }, "metricId": "com.astromkey.builtin:host.disk.bytesread", "name": "My metric event", "description": "This is the description for my metric event.", "aggregationType": "AVG", "severity": "CUSTOM_ALERT", "alertingScope": [ { "filterType": "ENTITY_ID", "entityId": "HOST-000000000001E240" }, { "filterType": "TAG", "tagFilter": { "context": "CONTEXTLESS", "key": "someKey", "value": "someValue" } } ], "metricDimensions": [ { "filterType": "ENTITY", "key": "dt.entity.disk", "nameFilter": { "value": "diskName", "operator": "EQUALS" } } ], "enabled": true, "disabledReason": "NONE", "warningReason": "NONE", "monitoringStrategy": { "type": "STATIC_THRESHOLD", "alertCondition": "ABOVE", "samples": 5, "violatingSamples": 3, "dealertingSamples": 5, "threshold": 80, "unit": "KILO_BYTE_PER_SECOND" } }
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
201 | EntityShortRepresentation | Успех. Cобытие метрики создано. Ответ содержит идентификатор и имя вновь созданного события метрики. |
400 | ErrorEnvelope | Не удалось. Ввод недействителен. |
Объекты тела ответа
Объект EntityShortRepresentation
Краткое представление объекта АппОптима .
Элемент | Тип | Описание |
---|---|---|
id | string | Идентификатор объекта АппОптима. |
name | string | Имя объекта АппОптима. |
description | string | Краткое описание объекта АппОптима. |
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/anomalyDetection/metricEvents/validator
|
Среда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents/validator
|
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия Запись конфигурации ( WriteConfig
) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
204 | Подтверждено. Представленная конфигурация действительна. Ответ не имеет тела. | |
400 | ErrorEnvelope | Не удалось. Ввод недействителен. |
Пример
В этом примере запрос создает настраиваемое оповещение , которое срабатывает, если свободное место на диске падает ниже 3% в 3 из 5 выборок. Область оповещения — все хосты.
Маркер API передается в заголовке авторизации .
Curl
<curl -X POST \ https://mySampleEnv.live.ruscomtech.ru/api/config/v1/anomalyDetection/metricEvents \ -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \ -H 'Content-Type: application/json' \ -d '{ "metricId": "com.astromkey.builtin:host.disk.freespacepercentage", "name": "Low disk space", "description": "The available disk space is below 3%", "aggregationType": "AVG", "eventType": "CUSTOM_ALERT", "alertCondition": "BELOW", "samples": 5, "violatingSamples": 3, "dealertingSamples": 5, "threshold": 3, "enabled": true, "tagFilters": [] } '
URL-адрес запроса
https://mySampleEnv.live.ruscomtech.ru/api/config/v1/anomalyDetection/metricEvents
Тело запроса
<{ "metricId": "com.astromkey.builtin:host.disk.freespacepercentage", "name": "Low disk space", "description": "The available disk space is below 3%", "aggregationType": "AVG", "eventType": "CUSTOM_ALERT", "alertCondition": "BELOW", "samples": 5, "violatingSamples": 3, "dealertingSamples": 5, "threshold": 3, "enabled": true, "tagFilters": [] }
Тело ответа
<{ "id": "1b06b18a-82df-4e18-a4aa-d4543b227734", "name": "Low disk space", "description": "The available disk space is below 3%" }
Код ответа
204
Результат
Новое правило выглядит так в пользовательском интерфейсе: