Открыть меню
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Обнаружение аномалий событий метрик API - GET событие

Материал из Документация АппОптима

Получает параметры указанного правила события метрики.

Запрос создает в качестве полезной нагрузкиapplication/json формат.

GET АппОптима https://{your-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents/{id}
Среда АктивногоШлюза https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents/{id}

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

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

Параметры

Параметр Тип Описание In Необходимость
id string Идентификатор требуемого события метрики. path требуется

Ответ

Чтобы найти все модели JSON, которые зависят от типа модели, обратитесь к моделям JSON .

Коды ответов

Код Тип Описание
200 MetricEvent Успех

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

Объект MetricEvent

Конфигурация события метрики.

Элемент Тип Описание
metadata ConfigurationMetadata Метаданные, полезные для отладки
id string Идентификатор события метрики.
metricId string Идентификатор метрики, оцениваемой событием метрики.
metricSelector string Селектор метрик, который должен быть выполнен.
name string Имя события метрики, отображаемое в пользовательском интерфейсе.
description string Описание события метрики.
aggregationType string Как точки данных метрики агрегируются для оценки.

Временные ряды должны поддерживать эту агрегацию.

Элемент может содержать эти значения

  • AVG
  • COUNT
  • MAX
  • MEDIAN
  • MIN
  • P90
  • SUM
  • VALUE
severity string Тип события, которое инициируется при нарушении порогового значения.

Тип CUSTOM_ALERTне связан с другими оповещениями. INFOТипа проблема не открывается .

Элемент может содержать эти значения

  • AVAILABILITY
  • CUSTOM_ALERT
  • ERROR
  • INFO
  • PERFORMANCE
  • RESOURCE_CONTENTION
enabled boolean Событие метрики включено ( true) или отключено ( false).
disabledReason string Причина автоматического отключения.

Конфигурация NONEозначает, что она не была отключена автоматически.

Элемент может содержать эти значения

  • METRIC_DEFINITION_INCONSISTENCY
  • NONE
  • TOO_MANY_DIMS
  • TOPX_FORCIBLY_DEACTIVATED
warningReason string Причина предупреждения указана в конфиге.

В NONEконфигурации средств нет предупреждений.

Элемент может содержать эти значения

  • NONE
  • TOO_MANY_DIMS
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 Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
  • ENTITY_ID-> EntityIdAlertingScope
  • MANAGEMENT_ZONE-> ManagementZoneAlertingScope
  • TAG-> TagFilterAlertingScope
  • NAME-> NameAlertingScope
  • CUSTOM_DEVICE_GROUP_NAME-> CustomDeviceGroupNameAlertingScope
  • HOST_GROUP_NAME-> HostGroupNameAlertingScope
  • HOST_NAME-> HostNameAlertingScope
  • PROCESS_GROUP_ID-> ProcessGroupIdAlertingScope
  • PROCESS_GROUP_NAME-> ProcessGroupNameAlertingScope

Элемент может содержать эти значения

  • CUSTOM_DEVICE_GROUP_NAME
  • ENTITY_ID
  • HOST_GROUP_NAME
  • HOST_NAME
  • MANAGEMENT_ZONE
  • NAME
  • PROCESS_GROUP_ID
  • PROCESS_GROUP_NAME
  • TAG

Объект MetricEventDimensions

Единый фильтр для измерений показателей.

Фактический набор полей зависит от типа фильтра. Найдите список актуальных объектов в описании поля filterType или см. Обнаружение аномалий событий метрик API — JSON модель.

Элемент Тип Описание
filterType string Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
  • ENTITY-> МетрикаEventEntityDimensions
  • STRING-> MetricEventStringDimensions

Элемент может содержать эти значения

  • ENTITY
  • STRING
key string Ключ размеров на метрике.

Объект MetricEventMonitoringStrategy

Стратегия мониторинга для конфигурации события метрики.

Это базовая версия стратегии мониторинга, в зависимости от типа актуальный JSON может содержать дополнительные поля.

Элемент Тип Описание
type string Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
  • STATIC_THRESHOLD-> MetricEventStaticThresholdMonitoringStrategy
  • AUTO_ADAPTIVE_BASELINE-> MetricEventAutoAdaptiveBaselineMonitoringStrategy

Элемент может содержать эти значения

  • AUTO_ADAPTIVE_BASELINE
  • STATIC_THRESHOLD

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"
  }
}

Пример

В этом примере в запросе перечислены параметры пользовательского правила события метрики « Высокая загрузка ЦП ОС ».

Маркер API передается в заголовке авторизации .

Правило имеет следующие параметры:

Metric-events1.png

Curl

<curl -X GET \
  https://mySampleEnv.live.ruscomtech.ru/api/config/v1/anomalyDetection/metricEvents/astromkey.remote.python.elasticsearch:node.os.cpu_percent:node.os.cpu_percent.high_usage \
  -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890'

URL-адрес запроса

https://mySampleEnv.live.ruscomtech.ru/api/config/v1/anomalyDetection/metricEvents/astromkey.remote.python.elasticsearch:node.os.cpu_percent:node.os.cpu_percent.high_usage

Тело ответа

<{
  "metadata": {
    "clusterVersion": "1.164.0.20190211-085949",
    "configurationVersions": [
      2
    ]
  },
  "id": "astromkey.remote.python.elasticsearch:node.os.cpu_percent:node.os.cpu_percent.high_usage",
  "metricId": "appoptima.remote.python.elasticsearch:node.os.cpu_percent",
  "name": "High OS CPU usage",
  "description": "The OS CPU usage is {alert_condition} the threshold of {threshold}",
  "aggregationType": "AVG",
  "eventType": "PERFORMANCE",
  "alertCondition": "ABOVE",
  "samples": 5,
  "violatingSamples": 3,
  "dealertingSamples": 5,
  "threshold": 70,
  "enabled": true,
  "tagFilters": []
}

Код ответа

200