VMware anomaly detection API - PUT configuration
Updates the configuration of anomaly detection for VMware.
The request consumes an application/json
payload.
PUT |
|
Parameters
Parameter | Type | Description | In | Required |
---|---|---|---|---|
body | VMwareAnomalyDetectionConfig |
JSON body of the request, containing parameters of the VMware anomaly detection configuration. |
body | optional |
The VMwareAnomalyDetectionConfig object
The configuration of the anomaly detection for VMware.
Element | Type | Description | Required |
---|---|---|---|
metadata | ConfigurationMetadata |
Metadata useful for debugging. |
optional |
esxiHighCpuSaturation | EsxiHighCpuSaturationConfig |
How to detect CPU saturation on ESXi host. |
required |
guestCpuLimitReached | GuestCPULimitReachedConfig |
How to detect guest CPU limit reached. |
optional |
esxiHighMemoryDetection | EsxiHighMemoryDetectionConfig |
How to detect memory saturation on ESXi host. |
required |
overloadedStorageDetection | OverloadedStorageDetectionConfig |
How to detect overloaded storage on physical storage device. |
required |
undersizedStorageDetection | UndersizedStorageDetectionConfig |
How to detect undersized storage device. |
required |
slowPhysicalStorageDetection | SlowPhysicalStorageDetectionConfig |
How to detect physical storage device running slow. |
required |
droppedPacketsDetection | DroppedPacketsDetectionConfig |
How to detect high number of dropped packets. |
required |
lowDatastoreSpaceDetection | LowDatastoreSpaceDetectionConfig |
How to detect low datastore space. |
required |
The LowDatastoreSpaceDetectionConfig object
The configuraiton of the low datastore free space detection.
Element | Type | Description | Required |
---|---|---|---|
enabled | boolean |
The detection is enabled ( |
required |
customThresholds | LowDatastoreSpaceThresholds |
Custom thresholds for low datastore free space. If not set then the automatic mode is used. |
optional |
The LowDatastoreSpaceThresholds object
Custom thresholds for low datastore free space. If not set then the automatic mode is used.
Element | Type | Description | Required |
---|---|---|---|
freeSpacePercentage | integer |
Alert if datastore free space is lower than X%. |
required |
The DroppedPacketsDetectionConfig object
The configuration of the high number of dropped packets detection.
Element | Type | Description | Required |
---|---|---|---|
enabled | boolean |
The detection is enabled ( |
required |
customThresholds | DroppedPacketsThresholds |
Custom thresholds for high number of dropped packets. If not set then the automatic mode is used. |
optional |
The DroppedPacketsThresholds object
Custom thresholds for high number of dropped packets. If not set then the automatic mode is used.
Element | Type | Description | Required |
---|---|---|---|
droppedPacketsPerSecond | integer |
Alert if receive/transmit dropped packets rate on NIC is higher than X packets per second in 3 out of 5 samples. |
required |
The SlowPhysicalStorageDetectionConfig object
The configuraiton of the physical storage device running slow detection.
Element | Type | Description | Required |
---|---|---|---|
enabled | boolean |
The detection is enabled ( |
required |
customThresholds | SlowPhysicalStorageThresholds |
Custom thresholds for slow running physical storage device. If not set then the automatic mode is used. Fulfillment of any condition triggers an alert. |
optional |
The SlowPhysicalStorageThresholds object
Custom thresholds for slow running physical storage device. If not set then the automatic mode is used.
Fulfillment of any condition triggers an alert.
Element | Type | Description | Required |
---|---|---|---|
avgReadWriteLatency | integer |
Read/write latency is higher than X milliseconds in 4 out of 5 samples. |
required |
peakReadWriteLatency | integer |
Peak value for read/write latency is higher than X milliseconds in 4 out of 5 samples. |
required |
The UndersizedStorageDetectionConfig object
Undersized storage device detection cofing
Element | Type | Description | Required |
---|---|---|---|
enabled | boolean |
The detection is enabled ( |
required |
customThresholds | UndersizedStorageThresholds |
Custom thresholds for undersized storage device. If not set then the automatic mode is used. Fulfillment of any condition triggers an alert. |
optional |
The UndersizedStorageThresholds object
Custom thresholds for undersized storage device. If not set then the automatic mode is used.
Fulfillment of any condition triggers an alert.
Element | Type | Description | Required |
---|---|---|---|
averageQueueCommandLatency | integer |
Average queue command latency is higher than X milliseconds in 3 out of 5 samples. |
required |
peakQueueCommandLatency | integer |
Peak queue command latency is higher than X milliseconds in 3 out of 5 samples. |
required |
The OverloadedStorageDetectionConfig object
The cofiguration of the overloaded storage on physical storage device detection.
Element | Type | Description | Required |
---|---|---|---|
enabled | boolean |
The detection is enabled ( |
required |
customThresholds | OverloadedStorageThresholds |
Custom thresholds for overloaded storage on physical storage device. If not set then the automatic mode is used. |
optional |
The OverloadedStorageThresholds object
Custom thresholds for overloaded storage on physical storage device. If not set then the automatic mode is used.
Element | Type | Description | Required |
---|---|---|---|
commandAbortsNumber | integer |
Alert if number of command aborts is higher than X in 3 out of 5 samples. |
required |
The EsxiHighMemoryDetectionConfig object
The configuration of the memory saturation on ESXi host detection.
Element | Type | Description | Required |
---|---|---|---|
enabled | boolean |
The detection is enabled ( |
required |
customThresholds | EsxiHighMemoryThresholds |
Custom thresholds for memory saturation on ESXi host. If not set then the automatic mode is used. |
optional |
The EsxiHighMemoryThresholds object
Custom thresholds for memory saturation on ESXi host. If not set then the automatic mode is used.
Element | Type | Description | Required |
---|---|---|---|
compressionDecompressionRate | number |
Alert if ESXi host swap IN/OUT or compression/decompression rate is higher X kilobytes per second in 3 out of 5 samples. |
required |
The GuestCPULimitReachedConfig object
The configuration of the guest CPU limit reached configuration detection.
Element | Type | Description | Required |
---|---|---|---|
enabled | boolean |
The detection is enabled ( |
required |
customThresholds | GuestCPULimitThresholds |
Custom thresholds for Guest CPU limit reached. If not set then the automatic mode is used. All conditions must be fulfilled to trigger an alert. |
optional |
The GuestCPULimitThresholds object
Custom thresholds for guest CPU limit detection. If not set then the automatic mode is used.
All conditions must be fulfilled to trigger an alert.
Element | Type | Description | Required |
---|---|---|---|
hostCpuUsageMinPercentage | integer |
Hypervisor CPU usage is higher than X% in 3 out of 5 samples. |
required |
vmCpuUsageMaxPercentage | integer |
VM CPU usage (VM CPU Usage Mhz / VM CPU limit in Mhz) is higher than X% in 3 out of 5 samples. |
required |
vmCpuReadyMaxPercentage | integer |
VM CPU ready is higher than X% occurred in 3 out of 5 samples. |
required |
The EsxiHighCpuSaturationConfig object
The configuration of the CPU saturation on ESXi host detection.
Element | Type | Description | Required |
---|---|---|---|
enabled | boolean |
The detection is enabled ( |
required |
customThresholds | EsxiHighCpuThresholds |
Custom thresholds for CPU saturation detection on ESXi. If not set then the automatic mode is used. All conditions must be fulfilled to trigger an alert. |
optional |
The EsxiHighCpuThresholds object
Custom thresholds for CPU saturation detection on ESXi. If not set then the automatic mode is used.
All conditions must be fulfilled to trigger an alert.
Element | Type | Description | Required |
---|---|---|---|
cpuUsagePercentage | integer |
CPU usage is higher than X% in 3 out of 5 samples. |
required |
vmCpuReadyPercentage | integer |
VM CPU ready is higher than X% in 3 out of 5 samples. |
required |
cpuPeakPercentage | integer |
At least one peak higher than X% occurred in 3 out of 5 samples. |
required |
The ConfigurationMetadata object
Metadata useful for debugging
Element | Type | Description | Required |
---|---|---|---|
configurationVersions | integer[] |
A Sorted list of the version numbers of the configuration. |
optional |
clusterVersion | string |
DESK server version. |
optional |
This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request. See the Example expandable section for working sample request.
{
"metadata": {
"configurationVersions": [
4,
2
],
"clusterVersion": {
"major": 0,
"minor": 0,
"revision": 0,
"sourceRevision": "",
"timestamp": ""
}
},
"esxiHighCpuSaturation": {
"enabled": true,
"customThresholds": {
"cpuUsagePercentage": 80,
"vmCpuReadyPercentage": 10,
"cpuPeakPercentage": 90
}
},
"esxiHighMemoryDetection": {
"enabled": true,
"customThresholds": {
"compressionDecompressionRate": 120
}
},
"overloadedStorageDetection": {
"enabled": true,
"customThresholds": {
"commandAbortsNumber": 1
}
},
"undersizedStorageDetection": {
"enabled": true,
"customThresholds": {
"averageQueueCommandLatency": 15,
"peakQueueCommandLatency": 160
}
},
"slowPhysicalStorageDetection": {
"enabled": true,
"customThresholds": {
"avgReadWriteLatency": 150,
"peakReadWriteLatency": 400
}
},
"droppedPacketsDetection": {
"enabled": true,
"customThresholds": {
"droppedPacketsPerSecond": 4
}
},
"lowDatastoreSpaceDetection": {
"enabled": true,
"customThresholds": {
"freeSpacePercentage": 5
}
}
}
Response format
A successful request doesn't return any content.
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 |
|
Response codes
Code | Description |
---|---|
204 | Validated. The submitted configuration is valid. Response doesn't have a body. |
400 | Failed. The input is invalid. |
Example
In this example, the request updates the configuration of anomaly detection for VMware from the GET request example. It changes Detect CPU saturation ESXi host mode to based on custom thresholds and sets the following thresholds:
- Alert if CPU usage is higher than 90%
- AND VM CPU ready is higher than 12%
- AND at least one peak higher than 98% occurred in 3 out of 5 samples.
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 VMware anomaly detection configuration call.
Curl
curl -X PUT \
https://mySampleEnv.live.dexp.ae/api/config/v1/anomalyDetection/vmware \
-H 'Authorization: Api-token abcdefjhij1234567890' \
-H 'Content-Type: application/json' \
-d '{
"esxiHighCpuSaturation": {
"enabled": true,
"customThresholds": {
"cpuUsagePercentage": 90,
"vmCpuReadyPercentage": 12,
"cpuPeakPercentage": 98
}
},
"esxiHighMemoryDetection": {
"enabled": true
},
"overloadedStorageDetection": {
"enabled": true
},
"undersizedStorageDetection": {
"enabled": true
},
"slowPhysicalStorageDetection": {
"enabled": true
},
"droppedPacketsDetection": {
"enabled": true
},
"lowDatastoreSpaceDetection": {
"enabled": true
}
}
'
Request URL
https://mySampleEnv.live.dexp.ae/api/config/v1/anomalyDetection/vmware
Request body
api-examples/config/anomaly-detection/vmware/put-config.json
{
"esxiHighCpuSaturation": {
"enabled": true,
"customThresholds": {
"cpuUsagePercentage": 90,
"vmCpuReadyPercentage": 12,
"cpuPeakPercentage": 98
}
},
"esxiHighMemoryDetection": {
"enabled": true
},
"overloadedStorageDetection": {
"enabled": true
},
"undersizedStorageDetection": {
"enabled": true
},
"slowPhysicalStorageDetection": {
"enabled": true
},
"droppedPacketsDetection": {
"enabled": true
},
"lowDatastoreSpaceDetection": {
"enabled": true
}
}
Response code
204
Result
The updated configuration has the following parameters: