Metric events anomaly detection API - POST an event
This API is deprecated. Use the Settings API instead. Look for the Metric events (builtin:anomaly-detection.metric-events
) schema.
Creates a new metric event rule.
The request consumes and produces an application/json
payload.
POST | SaaS | https://{your-environment-id}.live.dynatrace.com/api/config/v1/anomalyDetection/metricEvents |
Environment ActiveGate | https://{your-activegate-domain}:9999/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents |
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
To find all JSON models that depend on the type of the model, refer to JSON models.
The JSON body of the request. Contains parameters of the new metric event.
Request body objects
The MetricEvent
object
The configuration of the metric event.
How the metric data points are aggregated for the evaluation.
The timeseries must support this aggregation.
AVG
COUNT
MAX
MEDIAN
MIN
P90
SUM
VALUE
Defines the scope of the metric event. Only one filter is allowed per filter type, except for tags, where up to 3 are allowed. The filters are combined by conjunction.
The description of the metric event.
The reason of automatic disabling.
The NONE
means config was not disabled automatically.
METRIC_DEFINITION_INCONSISTENCY
NONE
TOO_MANY_DIMS
The metric event is enabled (true
) or disabled (false
).
The ID of the metric event.
Defines the dimensions of the metric to alert on. The filters are combined by conjunction.
The ID of the metric evaluated by the metric event.
The metric selector that should be executed.
A monitoring strategy for a metric event config.
This is the base version of the monitoring strategy, depending on the type, the actual JSON may contain additional fields.
The name of the metric event displayed in the UI.
Defines which dimension key should be used for the alertingScope.
Defines the query offset to adapt the evaluation timeframe for known metric latency.
The type of the event to trigger on the threshold violation.
The CUSTOM_ALERT
type is not correlated with other alerts.
The INFO
type does not open a problem.
AVAILABILITY
CUSTOM_ALERT
ERROR
INFO
PERFORMANCE
RESOURCE_CONTENTION
The reason of a warning set on the config.
The NONE
means config has no warnings.
NONE
The MetricEventAlertingScope
object
A single filter for the alerting scope.
The actual set of fields depends on type of the filter. Find the list of actual objects in the description of the filterType field or see Metric events anomaly detection API - JSON modelsļ»æ.
Defines the actual set of fields depending on the value. See one of the following objects:
ENTITY_ID
-> EntityIdAlertingScopeMANAGEMENT_ZONE
-> ManagementZoneAlertingScopeTAG
-> TagFilterAlertingScopeNAME
-> NameAlertingScopeCUSTOM_DEVICE_GROUP_NAME
-> CustomDeviceGroupNameAlertingScopeHOST_GROUP_NAME
-> HostGroupNameAlertingScopeHOST_NAME
-> HostNameAlertingScopePROCESS_GROUP_ID
-> ProcessGroupIdAlertingScopePROCESS_GROUP_NAME
-> ProcessGroupNameAlertingScope
CUSTOM_DEVICE_GROUP_NAME
ENTITY_ID
HOST_GROUP_NAME
HOST_NAME
MANAGEMENT_ZONE
NAME
PROCESS_GROUP_ID
PROCESS_GROUP_NAME
TAG
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 MetricEventDimensions
object
A single filter for the metrics dimensions.
The actual set of fields depends on type of the filter. Find the list of actual objects in the description of the filterType field or see Metric events anomaly detection API - JSON modelsļ»æ.
Defines the actual set of fields depending on the value. See one of the following objects:
ENTITY
-> MetricEventEntityDimensionsSTRING
-> MetricEventStringDimensions
ENTITY
STRING
The dimensions key on the metric.
The MetricEventMonitoringStrategy
object
A monitoring strategy for a metric event config.
This is the base version of the monitoring strategy, depending on the type, the actual JSON may contain additional fields.
Defines the actual set of fields depending on the value. See one of the following objects:
STATIC_THRESHOLD
-> MetricEventStaticThresholdMonitoringStrategyAUTO_ADAPTIVE_BASELINE
-> MetricEventAutoAdaptiveBaselineMonitoringStrategy
AUTO_ADAPTIVE_BASELINE
STATIC_THRESHOLD
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.
{"aggregationType": "AVG","alertingScope": [{"entityId": "HOST-000000000001E240","filterType": "ENTITY_ID"},{"filterType": "TAG","tagFilter": {"context": "CONTEXTLESS","key": "someKey","value": "someValue"}}],"description": "This is the description for my metric event.","disabledReason": "NONE","enabled": true,"metadata": {"clusterVersion": "Mock version","configurationVersions": [4,2]},"metricDimensions": [{"filterType": "ENTITY","key": "dt.entity.disk","nameFilter": {"operator": "EQUALS","value": "diskName"}}],"metricId": "com.dynatrace.builtin:host.disk.bytesread","monitoringStrategy": {"alertCondition": "ABOVE","dealertingSamples": 5,"samples": 5,"threshold": 80,"type": "STATIC_THRESHOLD","unit": "KILO_BYTE_PER_SECOND","violatingSamples": 3},"name": "My metric event","severity": "CUSTOM_ALERT","warningReason": "NONE"}
Response
Response codes
Success. The metric event has been created. The response contains the ID and name of the newly created metric event
Response body objects
The EntityShortRepresentation
object
The short representation of a Dynatrace entity.
A short description of the Dynatrace entity.
The ID of the Dynatrace entity.
The name of the Dynatrace entity.
Response body JSON model
{"description": "Dynatrace entity for the REST API example","id": "6a98d7bc-abb9-44f8-ae6a-73e68e71812a","name": "Dynatrace entity"}
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/metricEvents/validator |
Environment ActiveGate | https://{your-activegate-domain}:9999/e/{your-environment-id}/api/config/v1/anomalyDetection/metricEvents/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 creates a custom alert that triggers if free disk space drops below 3% in 3 out of 5 samples. The scope of the alert is all hosts.
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.
Curl
curl -X POST \https://mySampleEnv.live.dynatrace.com/api/config/v1/anomalyDetection/metricEvents \-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \-H 'Content-Type: application/json' \-d '{"metricId": "com.dynatrace.builtin:host.disk.freespacepercentage","name": "Low disk space","description": "The available disk space is below 3%","aggregationType": "AVG","eventType": "CUSTOM_ALERT","alertCondition": "BELOW","samples": 5,"violatingSamples": 3,"dealertingSamples": 5,"threshold": 3,"enabled": true,"tagFilters": []}'
Request URL
https://mySampleEnv.live.dynatrace.com/api/config/v1/anomalyDetection/metricEvents
Request body
{"metricId": "com.dynatrace.builtin:host.disk.freespacepercentage","name": "Low disk space","description": "The available disk space is below 3%","aggregationType": "AVG","eventType": "CUSTOM_ALERT","alertCondition": "BELOW","samples": 5,"violatingSamples": 3,"dealertingSamples": 5,"threshold": 3,"enabled": true,"tagFilters": []}
Response body
{"id": "1b06b18a-82df-4e18-a4aa-d4543b227734","name": "Low disk space","description": "The available disk space is below 3%"}
Response code
204
Result
The new rule looks like this in the UI: