Services anomaly detection API - PUT configuration
Updates the configuration of anomaly detection for services.
The request consumes an application/json
payload.
PUT | SaaS | https://{your-environment-id}.live.dynatrace.com/api/config/v1/anomalyDetection/services |
Environment ActiveGate | https://{your-activegate-domain}:9999/e/{your-environment-id}/api/config/v1/anomalyDetection/services |
Authentication
To execute this request, you need an access token with WriteConfig
scope.
To learn how to obtain and use it, see Tokens and authentication.
Parameters
The JSON body of the request. Contains parameters of the service anomaly detection configuration.
Request body objects
The ServiceAnomalyDetectionConfig
object
Dynatrace automatically detects service-related performance anomalies such as response time degradations and failure rate increases. Use these settings to configure detection sensitivity, set alert thresholds, or disable alerting for certain services.
Configuration of failure rate increase detection.
Configuration of response time degradation detection.
The FailureRateIncreaseDetectionConfig
object
Configuration of failure rate increase detection.
Parameters of failure rate increase auto-detection. Required if detectionMode is DETECT_AUTOMATICALLY
. Not applicable otherwise.
The absolute and relative thresholds both must exceed to trigger an alert.
Example: If the expected error rate is 1.5%, and you set an absolute increase of 1%, and a relative increase of 50%, the thresholds will be: Absolute: 1.5% + 1% = 2.5% Relative: 1.5% + 1.5% * 50% = 2.25%
How to detect failure rate increase: automatically, or based on fixed thresholds, or do not detect.
DETECT_AUTOMATICALLY
DETECT_USING_FIXED_THRESHOLDS
DONT_DETECT
Fixed thresholds for failure rate increase detection.
Required if detectionMode is DETECT_USING_FIXED_THRESHOLDS
. Not applicable otherwise.
The FailureRateIncreaseAutodetectionConfig
object
Parameters of failure rate increase auto-detection. Required if detectionMode is DETECT_AUTOMATICALLY
. Not applicable otherwise.
The absolute and relative thresholds both must exceed to trigger an alert.
Example: If the expected error rate is 1.5%, and you set an absolute increase of 1%, and a relative increase of 50%, the thresholds will be: Absolute: 1.5% + 1% = 2.5% Relative: 1.5% + 1.5% * 50% = 2.25%
Absolute increase of failing service calls to trigger an alert, %.
Relative increase of failing service calls to trigger an alert, %.
The FailureRateIncreaseThresholdConfig
object
Fixed thresholds for failure rate increase detection.
Required if detectionMode is DETECT_USING_FIXED_THRESHOLDS
. Not applicable otherwise.
Sensitivity of the threshold.
With low
sensitivity, high statistical confidence is used. Brief violations (for example, due to a surge in load) won't trigger alerts.
With high
sensitivity, no statistical confidence is used. Each violation triggers alert.
HIGH
LOW
MEDIUM
Failure rate during any 5-minute period to trigger an alert, %.
The LoadDropDetectionConfig
object
The configuration of load drops detection.
The detection is enabled (true
) or disabled (false
).
Alert if the observed load is less than X % of the expected value.
Alert if the service stays in abnormal state for at least X minutes.
The LoadSpikeDetectionConfig
object
The configuration of load spikes detection.
The detection is enabled (true
) or disabled (false
).
Alert if the observed load is more than X % of the expected value.
Alert if the service stays in abnormal state for at least X minutes.
The ConfigurationMetadata
object
Metadata useful for debugging
Dynatrace version.
A sorted list of the version numbers of the configuration.
A sorted list of version numbers of the configuration.
The ResponseTimeDegradationDetectionConfig
object
Configuration of response time degradation detection.
Parameters of the response time degradation auto-detection. Required if the detectionMode is DETECT_AUTOMATICALLY
. Not applicable otherwise.
Violation of any criterion triggers an alert.
How to detect response time degradation: automatically, or based on fixed thresholds, or do not detect.
DETECT_AUTOMATICALLY
DETECT_USING_FIXED_THRESHOLDS
DONT_DETECT
Fixed thresholds for response time degradation detection.
Required if detectionMode is DETECT_USING_FIXED_THRESHOLDS
. Not applicable otherwise.
The ResponseTimeDegradationAutodetectionConfig
object
Parameters of the response time degradation auto-detection. Required if the detectionMode is DETECT_AUTOMATICALLY
. Not applicable otherwise.
Violation of any criterion triggers an alert.
Minimal service load to detect response time degradation.
Response time degradation of services with smaller load won't trigger alerts.
FIFTEEN_REQUESTS_PER_MINUTE
FIVE_REQUESTS_PER_MINUTE
ONE_REQUEST_PER_MINUTE
TEN_REQUESTS_PER_MINUTE
Alert if the response time degrades beyond X milliseconds.
Alert if the response time degrades beyond X %.
Alert if the response time of the slowest 10% degrades beyond X milliseconds.
Alert if the response time of the slowest 10% degrades beyond X %.
The ResponseTimeDegradationThresholdConfig
object
Fixed thresholds for response time degradation detection.
Required if detectionMode is DETECT_USING_FIXED_THRESHOLDS
. Not applicable otherwise.
Minimal service load to detect response time degradation.
Response time degradation of services with smaller load won't trigger alerts.
FIFTEEN_REQUESTS_PER_MINUTE
FIVE_REQUESTS_PER_MINUTE
ONE_REQUEST_PER_MINUTE
TEN_REQUESTS_PER_MINUTE
Response time during any 5-minute period to trigger an alert, in milliseconds.
Sensitivity of the threshold.
With low
sensitivity, high statistical confidence is used. Brief violations (for example, due to a surge in load) won't trigger alerts.
With high
sensitivity, no statistical confidence is used. Each violation triggers an alert.
HIGH
LOW
MEDIUM
Response time of the 10% slowest during any 5-minute period to trigger an alert, in milliseconds.
Request body JSON model
This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request.
{"failureRateIncrease": {"detectionMode": "DETECT_USING_FIXED_THRESHOLDS","thresholds": {"sensitivity": "LOW","threshold": 10}},"loadDrop": {"enabled": true,"loadDropPercent": 40,"minAbnormalStateDurationInMinutes": 5},"loadSpike": {"enabled": false},"metadata": {"clusterVersion": "Mock version","configurationVersions": [4,2]},"responseTimeDegradation": {"automaticDetection": {"loadThreshold": "ONE_REQUEST_PER_MINUTE","responseTimeDegradationMilliseconds": 250,"responseTimeDegradationPercent": 90,"slowestResponseTimeDegradationMilliseconds": 500,"slowestResponseTimeDegradationPercent": 200},"detectionMode": "DETECT_AUTOMATICALLY"}}
Response
Response codes
Success. Configuration has been updated. Response doesn't have a body.
Validate payload
We recommend that you validate the payload before submitting it with an actual request. A response code of 204 indicates a valid payload.
The request consumes an application/json
payload.
POST | SaaS | https://{your-environment-id}.live.dynatrace.com/api/config/v1/anomalyDetection/services/validator |
Environment ActiveGate | https://{your-activegate-domain}:9999/e/{your-environment-id}/api/config/v1/anomalyDetection/services/validator |
Authentication
To execute this request, you need an access token with WriteConfig
scope.
To learn how to obtain and use it, see Tokens and authentication.
Response
Response codes
Validated. The submitted configuration is valid. Response doesn't have a body.
Example
In this example, the request updates the configuration of anomaly detection for services from the GET request example. It changes the Detect increase in failure rate mode to used fixed thresholds and sets the following threshold with high sensitivity:
- Alert if 3% of custom failure rate threshold is exceeded during any 5-minute period.
The API token is passed in the Authorization header.
You can download or copy the example request body to try it out on your own. Be sure to create a backup copy of your current configuration with the GET services anomaly detection configuration call.
Curl
curl -X PUT \https://mySampleEnv.live.dynatrace.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"}}}'
Request URL
PUT https://mySampleEnv.live.dynatrace.com/api/config/v1/anomalyDetection/services
Request body
{"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"}}}
Response code
204
Result
The updated configuration has the following parameters: