API обнаружения аномалий служб - PUT конфигурация

Материал из Документация Ключ-АСТРОМ
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)

Обновляет конфигурацию обнаружения аномалий для сервисов.

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

PUT Ключ-АСТРОМ Managed для управления 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

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

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

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

Параметры

Параметр Тип Описание В Необходимый
тело Конфигурация обнаружения аномалий обслуживания Тело JSON запроса. Содержит параметры конфигурации обнаружения аномалий службы. тело необязательный

Объекты тела запроса

Объект ServiceAnomalyDetectionConfig

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

Элемент Тип Описание Необходимость
метаданные Метаданные конфигурации Метаданные, полезные для отладки необязательный
ответВремядеградации Конфигурация обнаружения деградации времени отклика Настройка обнаружения ухудшения времени отклика. необходимый
loadDrop Конфигурация обнаружения сброса загрузки Конфигурация обнаружения падения нагрузки. необязательный
loadSpike Загрузить конфигурацию обнаружения всплесков Настройка обнаружения скачков нагрузки. необязательный
отказRateIncrease Конфигурация обнаружения увеличения частоты отказов Конфигурация обнаружения увеличения частоты отказов. необходимый

Объект ConfigurationMetadata

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

Элемент Тип Описание Необходимость
конфигурацияВерсии целое [] Отсортированный список номеров версий конфигурации. необязательный
текущие версии конфигурации строка [] Отсортированный список номеров версий конфигурации. необязательный
clusterVersion нить Версия Ключ-АСТРОМ. необязательный

Объект ResponseTimeDegradationDetectionConfig

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

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

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

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

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

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

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

необязательный

Объект ResponseTimeDegradationAutodetectionConfig

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

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

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

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

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

  • FIFTEEN_REQUESTS_PER_MINUTE
  • FIVE_REQUESTS_PER_MINUTE
  • ONE_REQUEST_PER_MINUTE
  • TEN_REQUESTS_PER_MINUTE
необходимый

Объект _ ResponseTimeDegradationThresholdConfig

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

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

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

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

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

  • FIFTEEN_REQUESTS_PER_MINUTE
  • FIVE_REQUESTS_PER_MINUTE
  • ONE_REQUEST_PER_MINUTE
  • TEN_REQUESTS_PER_MINUTE
необходимый
чувствительность нить Чувствительность порога.

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

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

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

  • HIGH
  • LOW
  • MEDIUM
необходимый

Объект _ LoadDropDetectionConfig

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

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

Объект LoadSpikeDetectionConfig

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

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

Объект FailureRateIncreaseDetectionConfig

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

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

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

  • DETECT_AUTOMATICALLY
  • DETECT_USING_FIXED_THRESHOLDS
  • DONT_DETECT
необходимый
автоматическое обнаружение Конфигурация автообнаружения увеличения частоты отказов Параметры автообнаружения увеличивают частоту отказов. Требуется, если режим обнаружения равен DETECT_AUTOMATICALLY. В противном случае неприменимо.

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

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

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

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

необязательный

Объект FailureRateIncreaseAutodetectionConfig

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

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

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

Элемент Тип Описание Необходимость
фейлингсервицекаллперцентажеинкреасеабсолют целое число Абсолютный прирост числа неудачных вызовов службы для срабатывания оповещения, %. необходимый
сбойServiceCallPercentageIncreaseRelative целое число Относительное увеличение числа неудачных вызовов службы для срабатывания оповещения, %. необходимый

Объект FailureRateIncreaseThresholdConfig

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

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

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

При 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"
    }
  }
}

Ответ

Коды ответов

Код Тип Описание
204 Успех. Конфигурация обновлена. Ответ не имеет тела.
400 ErrorEnvelope Неуспешный. Ввод недействителен

Проверить полезную нагрузку

Мы рекомендуем вам проверить полезную нагрузку перед ее отправкой с фактическим запросом. Код ответа 204 указывает на действительную полезную нагрузку.

Запрос потребляет application/jsonполезную нагрузку.

POST Ключ-АСТРОМ Managed для управления https://{your-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/services/validator
Cреда АктивногоШлюза https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/services/validator

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

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

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

Ответ

Коды ответов

Код Тип Описание
204 Подтверждено. Представленная конфигурация действительна. Ответ не имеет тела.
400 ErrorEnvelope Неуспешный. Ввод недействителен

Пример

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

  • Оповещение при превышении 3 % пользовательского порога частоты отказов в течение любого 5-минутного периода.

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

Вы можете скачать или скопировать образец тела запроса, чтобы попробовать его самостоятельно. Обязательно создайте резервную копию текущей конфигурации с помощью вызова конфигурации обнаружения аномалий служб GET .

Завиток

curl -X PUT \
  https://mySampleEnv.live.astromkey.com/api/config/v1/anomalyDetection/services \
  -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
  -H 'Content-Type: application/json' \
  -d '{
  "responseTimeDegradation": {
    "detectionMode": "DETECT_AUTOMATICALLY",
    "automaticDetection": {
      "responseTimeDegradationMilliseconds": 100,
      "responseTimeDegradationPercent": 50,
      "slowestResponseTimeDegradationMilliseconds": 100,
      "slowestResponseTimeDegradationPercent": 100,
      "loadThreshold": "TEN_REQUESTS_PER_MINUTE"
    }
  },
  "failureRateIncrease": {
    "detectionMode": "DETECT_USING_FIXED_THRESHOLDS",
    "thresholds": {
      "threshold": 3,
      "sensitivity": "HIGH"
    }
  }
}
'

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

PUT https://mySampleEnv.live.astromkey.com/api/config/v1/anomalyDetection/services

Тело запроса

{
  "responseTimeDegradation": {
    "detectionMode": "DETECT_AUTOMATICALLY",
    "automaticDetection": {
      "responseTimeDegradationMilliseconds": 100,
      "responseTimeDegradationPercent": 50,
      "slowestResponseTimeDegradationMilliseconds": 100,
      "slowestResponseTimeDegradationPercent": 100,
      "loadThreshold": "TEN_REQUESTS_PER_MINUTE"
    }
  },
  "failureRateIncrease": {
    "detectionMode": "DETECT_USING_FIXED_THRESHOLDS",
    "thresholds": {
      "threshold": 3,
      "sensitivity": "HIGH"
    }
  }
}

Код ответа

204

Результат

Обновленная конфигурация имеет следующие параметры: