Открыть меню
Открыть персональное меню
Вы не представились системе
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/services
Среда АктивногоШлюза https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/services

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

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

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

Параметры

Запрос не предоставляет никаких настраиваемых параметров.

Ответ

Коды ответов

Код Тип Описание
200 Конфигурация обнаружения аномалий обслуживания Успех

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

Объект ServiceAnomalyDetectionConfig

АппОптима автоматически обнаруживает аномалии производительности, связанные с обслуживанием, такие как снижение времени отклика и увеличение частоты отказов. Используйте эти параметры, чтобы настроить чувствительность обнаружения, установить пороги предупреждений или отключить предупреждения для определенных служб.

Элемент Тип Описание
metadata ConfigurationMetadata Метаданные, полезные для отладки
responseTimeDegradation ResponseTimeDegradationDetectionConfig Настройка обнаружения ухудшения времени отклика.
loadDrop LoadDropDetectionConfig Конфигурация обнаружения падения нагрузки.
loadSpike LoadSpikeDetectionConfig Настройка обнаружения скачков нагрузки.
failureRateIncrease FailureRateIncreaseDetectionConfig Конфигурация обнаружения увеличения частоты отказов.

Объект ConfigurationMetadata

Метаданные, полезные для отладки

Элемент Тип Описание
configurationVersions integer[] Отсортированный список номеров версий конфигурации.
currentConfigurationVersions string[] Отсортированный список номеров версий конфигурации.
clusterVersion string Версия АппОптима.

Объект ResponseTimeDegradationDetectionConfig

Настройка обнаружения ухудшения времени отклика.

Элемент Тип Описание
detectionMode string Как обнаружить ухудшение времени отклика: автоматически, или на основе фиксированных порогов, или не обнаруживать.

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

  • DETECT_AUTOMATICALLY
  • DETECT_USING_FIXED_THRESHOLDS
  • DONT_DETECT
automaticDetection ResponseTimeDegradationAutodetectionConfig Параметры автоматического определения деградации времени отклика. Требуется, если для параметра discoveryMode установлено значение DETECT_AUTOMATICALLY. В противном случае неприменимо.

Нарушение любого критерия вызывает предупреждение.

thresholds ResponseTimeDegradationThresholdConfig Фиксированные пороги для обнаружения ухудшения времени отклика.

Требуется, если режим обнаружения равен DETECT_USING_FIXED_THRESHOLDS. В противном случае неприменимо.

Объект ResponseTimeDegradationAutodetectionConfig

Параметры автоматического определения деградации времени отклика. Требуется, если для параметра discoveryMode установлено значение DETECT_AUTOMATICALLY. В противном случае неприменимо.

Нарушение любого критерия вызывает предупреждение.

Элемент Тип Описание
responseTimeDegradationMilliseconds integer Предупреждать, если время отклика ухудшится за X миллисекунд.
responseTimeDegradationPercent integer Предупреждать, если время отклика превышает X %.
slowestResponseTimeDegradationMilliseconds integer Предупреждать, если время отклика самых медленных 10% ухудшится за X миллисекунд.
slowestResponseTimeDegradationPercent integer Предупреждать, если время отклика самых медленных 10% ухудшится за X %.
loadThreshold string Минимальная нагрузка на сервис для обнаружения ухудшения времени отклика.

Ухудшение времени отклика служб с меньшей нагрузкой не приведет к срабатыванию предупреждений.

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

  • FIFTEEN_REQUESTS_PER_MINUTE
  • FIVE_REQUESTS_PER_MINUTE
  • ONE_REQUEST_PER_MINUTE
  • TEN_REQUESTS_PER_MINUTE

Объект ResponseTimeDegradationThresholdConfig

Фиксированные пороги для обнаружения ухудшения времени отклика.

Требуется, если режим обнаружения равен DETECT_USING_FIXED_THRESHOLDS. В противном случае неприменимо.

Элемент Тип Описание
responseTimeThresholdMilliseconds integer Время отклика в течение любого 5-минутного периода для срабатывания оповещения в миллисекундах.
slowestResponseTimeThresholdMilliseconds integer Время отклика 10 % самых медленных в течение любого 5-минутного периода времени для срабатывания оповещения, в миллисекундах.
loadThreshold string Минимальная нагрузка на сервис для обнаружения ухудшения времени отклика.

Ухудшение времени отклика служб с меньшей нагрузкой не приведет к срабатыванию предупреждений.

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

  • FIFTEEN_REQUESTS_PER_MINUTE
  • FIVE_REQUESTS_PER_MINUTE
  • ONE_REQUEST_PER_MINUTE
  • TEN_REQUESTS_PER_MINUTE
sensitivity string Чувствительность порога.

При lowчувствительности используется высокая статистическая достоверность. Кратковременные нарушения (например, из-за резкого скачка нагрузки) не вызывают оповещения.

В случае highчувствительности статистическая достоверность не используется. Каждое нарушение вызывает оповещение.

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

  • HIGH
  • LOW
  • MEDIUM

Объект LoadDropDetectionConfig

Конфигурация обнаружения падения нагрузки.

Элемент Тип Описание
enabled boolean Обнаружение включено ( true) или отключено ( false).
loadDropPercent integer Предупреждать, если наблюдаемая нагрузка меньше X % от ожидаемого значения.
minAbnormalStateDurationInMinutes integer Оповещение, если служба остается в ненормальном состоянии не менее X минут.

Объект LoadSpikeDetectionConfig

Настройка обнаружения скачков нагрузки.

Элемент Тип Описание
enabled boolean Обнаружение включено ( true) или отключено ( false).
loadSpikePercent integer Предупреждать, если наблюдаемая нагрузка превышает X % ожидаемого значения.
minAbnormalStateDurationInMinutes integer Оповещение, если служба остается в ненормальном состоянии не менее X минут.

Объект FailureRateIncreaseDetectionConfig

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

Элемент Тип Описание
detectionMode string Как обнаружить увеличение частоты отказов: автоматически, или на основе фиксированных порогов, или не обнаруживать.

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

  • DETECT_AUTOMATICALLY
  • DETECT_USING_FIXED_THRESHOLDS
  • DONT_DETECT
automaticDetection FailureRateIncreaseAutodetectionConfig Параметры автообнаружения увеличивают частоту отказов. Требуется, если режим обнаружения равен DETECT_AUTOMATICALLY. В противном случае неприменимо.

Абсолютный и относительный пороги должны быть превышены, чтобы сработало оповещение.

Пример: если ожидаемая частота ошибок составляет 1,5 %, и вы установили абсолютное увеличение на 1 % и относительное увеличение на 50 %, пороговые значения будут следующими: Абсолютный: 1,5 % + 1 % = 2,5 % Относительный: 1,5 % + 1,5 % * 50% = 2,25%

thresholds FailureRateIncreaseThresholdConfig Фиксированные пороги для обнаружения увеличения частоты отказов.

Требуется, если режим обнаружения равен DETECT_USING_FIXED_THRESHOLDS. В противном случае неприменимо.

Объект FailureRateIncreaseAutodetectionConfig

Параметры автообнаружения увеличивают частоту отказов. Требуется, если режим обнаружения равен DETECT_AUTOMATICALLY. В противном случае неприменимо.

Абсолютный и относительный пороги должны быть превышены, чтобы сработало оповещение.

Пример: если ожидаемая частота ошибок составляет 1,5 %, и вы установили абсолютное увеличение на 1 % и относительное увеличение на 50 %, пороговые значения будут следующими: Абсолютный: 1,5 % + 1 % = 2,5 % Относительный: 1,5 % + 1,5 % * 50% = 2,25%

Элемент Тип Описание
failingServiceCallPercentageIncreaseAbsolute integer Абсолютный прирост числа неудачных вызовов службы для срабатывания оповещения, %.
failingServiceCallPercentageIncreaseRelative integer Относительное увеличение числа неудачных вызовов службы для срабатывания оповещения, %.

Объект FailureRateIncreaseThresholdConfig

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

Требуется, если режим обнаружения равен DETECT_USING_FIXED_THRESHOLDS. В противном случае неприменимо.

Элемент Тип Описание
threshold integer Частота отказов в течение любого 5-минутного периода для срабатывания оповещения, %.
sensitivity string Чувствительность порога.

При lowчувствительности используется высокая статистическая достоверность. Кратковременные нарушения (например, из-за резкого скачка нагрузки) не вызывают оповещения.

В случае highчувствительности статистическая достоверность не используется. Каждое нарушение вызывает оповещение.

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

  • HIGH
  • LOW
  • MEDIUM

JSON-модель тела ответа

<{
  "metadata": {
    "configurationVersions": [
      4,
      2
    ],
    "clusterVersion": "Mock version"
  },
  "responseTimeDegradation": {
    "detectionMode": "DETECT_AUTOMATICALLY",
    "automaticDetection": {
      "responseTimeDegradationMilliseconds": 250,
      "responseTimeDegradationPercent": 90,
      "slowestResponseTimeDegradationMilliseconds": 500,
      "slowestResponseTimeDegradationPercent": 200,
      "loadThreshold": "ONE_REQUEST_PER_MINUTE"
    }
  },
  "loadDrop": {
    "enabled": true,
    "loadDropPercent": 40,
    "minAbnormalStateDurationInMinutes": 5
  },
  "loadSpike": {
    "enabled": false
  },
  "failureRateIncrease": {
    "detectionMode": "DETECT_USING_FIXED_THRESHOLDS",
    "thresholds": {
      "threshold": 10,
      "sensitivity": "LOW"
    }
  }
}

Пример

В этом примере запрос перечисляет текущую конфигурацию обнаружения аномалий для служб.

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

Конфигурация имеет следующие настройки:

Serv1.png

Curl

<curl -X GET \
  https://mySampleEnv.live.ruscomtech.ru/api/config/v1/anomalyDetection/services \
  -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890'

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

https://mySampleEnv.live.ruscomtech.ru/api/config/v1/anomalyDetection/services

Тело ответа

<{
  "metadata": {
    "clusterVersion": "1.163.14.20190204-102159",
    "configurationVersions": [
      2
    ]
  },
  "responseTimeDegradation": {
    "detectionMode": "DETECT_AUTOMATICALLY",
    "automaticDetection": {
      "responseTimeDegradationMilliseconds": 100,
      "responseTimeDegradationPercent": 50,
      "slowestResponseTimeDegradationMilliseconds": 100,
      "slowestResponseTimeDegradationPercent": 100,
      "loadThreshold": "TEN_REQUESTS_PER_MINUTE"
    }
  },
  "failureRateIncrease": {
    "detectionMode": "DETECT_AUTOMATICALLY",
    "automaticDetection": {
      "failingServiceCallPercentageIncreaseAbsolute": 0,
      "failingServiceCallPercentageIncreaseRelative": 50
    }
  }
}

Код ответа

200