Обнаружение аномалий событий метрик API - POST событие
Создает новое правило события метрики.
Запрос создает и использует в качестве полезной нагрузки application/json формат.
| POST | Managed | https://{your-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents
 | 
| Cреда ActiveGate | 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 | Версия Dynatrace. | по желанию | 
Объект 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.dynatrace.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
Краткое представление объекта Dynatrace.
| Элемент | Тип | Описание | 
|---|---|---|
| id | string | Идентификатор объекта Dynatrace. | 
| name | string | Имя объекта Dynatrace. | 
| description | string | Краткое описание объекта Dynatrace. | 
JSON-модель тела ответа
{
  "id": "6a98d7bc-abb9-44f8-ae6a-73e68e71812a",
  "name": "Dynatrace entity",
  "description": "Dynatrace entity for the REST API example"
}
Проверка полезной нагрузки
Мы рекомендуем вам проверить полезную нагрузку перед ее отправкой с фактическим запросом. Код ответа 204 указывает на действительную полезную нагрузку.
Запрос использует в качестве полезной нагрузки application/json формат.
| POST | Managed | https://{your-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents/validator
 | 
| Среда ActiveGate | 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.dynatrace.com/api/config/v1/anomalyDetection/metricEvents \
  -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
  -H 'Content-Type: application/json' \
  -d '{
  "metricId": "com.dynatrace.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.dynatrace.com/api/config/v1/anomalyDetection/metricEvents
Тело запроса
{
  "metricId": "com.dynatrace.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
Результат
Новое правило выглядит так в пользовательском интерфейсе:
