Обновляет конфигурацию обнаружения аномалий для служб баз данных.
Запрос использует в качестве полезной нагрузки application/json
формат.
PUT | АппОптима | https://{your-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/databaseServices
|
Среда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/databaseServices
|
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия Запись конфигурации ( WriteConfig
) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Параметры
Параметр | Тип | Описание | In | Необходимость |
---|---|---|---|---|
body | DatabaseAnomalyDetectionConfig | Тело JSON запроса. Содержит параметры конфигурации обнаружения аномалий службы базы данных. | body | по желанию |
Объекты тела запроса
Объект DatabaseAnomalyDetectionConfig
Конфигурация обнаружения аномалий для служб баз данных.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
metadata | ConfigurationMetadata | Метаданные, полезные для отладки | по желанию |
responseTimeDegradation | ResponseTimeDegradationDetectionConfig | Настройка обнаружения ухудшения времени отклика. | требуется |
loadDrop | LoadDropDetectionConfig | Конфигурация обнаружения падения нагрузки. | по желанию |
loadSpike | LoadSpikeDetectionConfig | Настройка обнаружения скачков нагрузки. | по желанию |
failureRateIncrease | FailureRateIncreaseDetectionConfig | Конфигурация обнаружения увеличения частоты отказов. | требуется |
databaseConnectionFailureCount | DatabaseConnectionFailureDetectionConfig | Параметры обнаружения неудачных подключений к базе данных.
Предупреждение срабатывает, когда количество неудачных подключений превышает connectionFailsCount в течение любого периода timePeriodMinutes в минутах. |
требуется |
Объект ConfigurationMetadata
Метаданные, полезные для отладки
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
configurationVersions | integer[] | Отсортированный список номеров версий конфигурации. | по желанию |
currentConfigurationVersions | string[] | Отсортированный список номеров версий конфигурации. | по желанию |
clusterVersion | string | Версия АппОптима. | по желанию |
Объект ResponseTimeDegradationDetectionConfig
Настройка обнаружения ухудшения времени отклика.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
detectionMode | string | Как обнаружить ухудшение времени отклика: автоматически, или на основе фиксированных порогов, или не обнаруживать.
Элемент может содержать эти значения
|
требуется |
automaticDetection | ResponseTimeDegradationAutodetectionConfig | Параметры автоматического определения деградации времени отклика. Требуется, если для параметра discoveryMode установлено значение DETECT_AUTOMATICALLY . В противном случае неприменимо.
Нарушение любого критерия вызывает предупреждение. |
по желанию |
thresholds | ResponseTimeDegradationThresholdConfig | Фиксированные пороги для обнаружения ухудшения времени отклика.
Требуется, если режим обнаружения равен |
по желанию |
Объект ResponseTimeDegradationAutodetectionConfig
Параметры автоматического определения деградации времени отклика. Требуется, если для параметра discoveryMode установлено значение DETECT_AUTOMATICALLY
. В противном случае неприменимо.
Нарушение любого критерия вызывает предупреждение.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
responseTimeDegradationMilliseconds | integer | Предупреждать, если время отклика ухудшится за X миллисекунд. | требуется |
responseTimeDegradationPercent | integer | Предупреждать, если время отклика превышает X %. | требуется |
slowestResponseTimeDegradationMilliseconds | integer | Предупреждать, если время отклика самых медленных 10% ухудшится за X миллисекунд. | требуется |
slowestResponseTimeDegradationPercent | integer | Предупреждать, если время отклика самых медленных 10% ухудшится за X %. | требуется |
loadThreshold | string | Минимальная нагрузка на сервис для обнаружения ухудшения времени отклика.
Ухудшение времени отклика служб с меньшей нагрузкой не приведет к срабатыванию предупреждений. Элемент может содержать эти значения
|
требуется |
Объект ResponseTimeDegradationThresholdConfig
Фиксированные пороги для обнаружения ухудшения времени отклика.
Требуется, если режим обнаружения равен DETECT_USING_FIXED_THRESHOLDS
. В противном случае неприменимо.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
responseTimeThresholdMilliseconds | integer | Время отклика в течение любого 5-минутного периода для срабатывания оповещения в миллисекундах. | требуется |
slowestResponseTimeThresholdMilliseconds | integer | Время отклика 10 % самых медленных в течение любого 5-минутного периода времени для срабатывания оповещения, в миллисекундах. | требуется |
loadThreshold | string | Минимальная нагрузка на сервис для обнаружения ухудшения времени отклика.
Ухудшение времени отклика служб с меньшей нагрузкой не приведет к срабатыванию предупреждений. Элемент может содержать эти значения
|
требуется |
sensitivity | string | Чувствительность порога.
При В Элемент может содержать эти значения
|
требуется |
Объект 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 | Как обнаружить увеличение частоты отказов: автоматически, или на основе фиксированных порогов, или не обнаруживать.
Элемент может содержать эти значения
|
требуется |
automaticDetection | FailureRateIncreaseAutodetectionConfig | Параметры автообнаружения увеличивают частоту отказов. Требуется, если режим обнаружения равен DETECT_AUTOMATICALLY . В противном случае неприменимо.
Абсолютный и относительный пороги должны быть превышены, чтобы сработало оповещение. Пример: если ожидаемая частота ошибок составляет 1,5 %, и вы установили абсолютное увеличение на 1 % и относительное увеличение на 50 %, пороговые значения будут следующими: Абсолютный: 1,5 % + 1 % = 2,5 % Относительный: 1,5 % + 1,5 % * 50% = 2,25% |
по желанию |
thresholds | FailureRateIncreaseThresholdConfig | Фиксированные пороги для обнаружения увеличения частоты отказов.
Требуется, если режим обнаружения равен |
по желанию |
Объект 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 | Чувствительность порога.
При В Элемент может содержать эти значения
|
требуется |
Объект DatabaseConnectionFailureDetectionConfig
Параметры обнаружения неудачных подключений к базе данных.
Предупреждение срабатывает, когда количество неудачных подключений превышает connectionFailsCount в течение любого периода timePeriodMinutes в минутах.
Элемент | Тип | Элемент | Тип | Описание | Необходимость |
---|---|---|---|---|---|
enabled | boolean | включено | логический | Обнаружение включено ( true ) или отключено ( false ).
|
требуется |
connectionFailsCount | integer | соединениеFailsCount | целое число | Количество неудачных подключений к базе данных в течение любого периода timePeriodMinutes в минутах для срабатывания оповещения. | по желанию |
timePeriodMinutes | integer | времяПериодМинуты | целое число | Период времени X минут, в течение которого оценивается connectionFailsCount . | по желанию |
JSON-модель тела запроса
Это модель тела запроса, показывающая возможные элементы. Его необходимо настроить для использования в реальном запросе.
<{ "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" } }, "databaseConnectionFailureCount": { "enabled": "true", "connectionFailsCount": 5, "timePeriodMinutes": 5 } }
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
204 | Успех. Конфигурация обновлена. Ответ не имеет тела. | |
400 | ErrorEnvelope | Не удалось. Ввод недействителен |
Проверка полезной нагрузки
Мы рекомендуем вам проверить полезную нагрузку перед ее отправкой с фактическим запросом. Код ответа 204 указывает на действительную полезную нагрузку.
Запрос использует в качестве полезной нагрузки application/json
формат.
POST | АппОптима | https://{your-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/databaseServices/validator
|
Среда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/config/v1/anomalyDetection/databaseServices/validator
|
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия Запись конфигурации ( WriteConfig
) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
204 | Подтверждено. Представленная конфигурация действительна. Ответ не имеет тела. | |
400 | ErrorEnvelope | Не удалось. Ввод недействителен |
Пример
В этом примере запрос обновляет конфигурацию обнаружения аномалий для служб базы данных из примера запроса GET . Он активирует обнаружение ухудшения времени отклика в автоматическом режиме и устанавливает следующие пороги:
- Предупреждать, если время отклика ухудшится более чем на 5 мс и на 50% .
- Оповещение, если время отклика самых медленных 10 % ухудшится более чем на 20 мс и на 100 % .
- Чтобы избежать избыточного оповещения, не подавайте оповещения для служб с низкой нагрузкой менее 10 запросов в минуту.
Маркер API передается в заголовке авторизации .
Вы можете скачать или скопировать образец тела запроса, чтобы попробовать его самостоятельно. Обязательно создайте резервную копию текущей конфигурации с помощью вызова конфигурации обнаружения аномалий базы данных GET .
Curl
<curl -X PUT \ https://mySampleEnv.live.ruscomtech.ru/api/config/v1/anomalyDetection/databaseServices \ -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \ -H 'Content-Type: application/json' \ -d '{ "responseTimeDegradation": { "detectionMode": "DETECT_AUTOMATICALLY", "automaticDetection": { "responseTimeDegradationMilliseconds": 5, "responseTimeDegradationPercent": 50, "slowestResponseTimeDegradationMilliseconds": 5, "slowestResponseTimeDegradationPercent": 100, "loadThreshold": "TEN_REQUESTS_PER_MINUTE" } }, "failureRateIncrease": { "detectionMode": "DETECT_USING_FIXED_THRESHOLDS", "thresholds": { "threshold": 0, "sensitivity": "LOW" } }, "databaseConnectionFailureCount": { "enabled": true, "connectionFailsCount": 5, "timePeriodMinutes": 5 } } '
URL-адрес запроса
https://mySampleEnv.live.ruscomtech.ru/api/config/v1/anomalyDetection/databaseServices
Тело запроса
<{ "responseTimeDegradation": { "detectionMode": "DETECT_AUTOMATICALLY", "automaticDetection": { "responseTimeDegradationMilliseconds": 5, "responseTimeDegradationPercent": 50, "slowestResponseTimeDegradationMilliseconds": 5, "slowestResponseTimeDegradationPercent": 100, "loadThreshold": "TEN_REQUESTS_PER_MINUTE" } }, "failureRateIncrease": { "detectionMode": "DETECT_USING_FIXED_THRESHOLDS", "thresholds": { "threshold": 0, "sensitivity": "LOW" } }, "databaseConnectionFailureCount": { "enabled": true, "connectionFailsCount": 5, "timePeriodMinutes": 5 } }
Код ответа
204
Результат
Обновленная конфигурация имеет следующие параметры: