Synthetic monitors API - JSON models
Some JSON models of the Synthetic monitors API vary depending on the type of the model. The JSON models for each variation are listed below.
Variations of the SyntheticMonitor
object
BROWSER
The BrowserSyntheticMonitor
object
The synthetic monitor.
The actual set of fields depends the type of the monitor. Find the list of actual objects in the description of the type field or see Synthetic monitors API - JSON models.
Element | Type | Description |
---|---|---|
keyPerformanceMetrics | Key | The key performance metrics configuration. |
events | Event | A list of events for this monitor |
The KeyPerformanceMetrics
object
The key performance metrics configuration.
Element | Type | Description |
---|---|---|
loadActionKpm | string | Defines the key performance metric for load actions. The element can hold these values
|
xhrActionKpm | string | Defines the key performance metric for XHR actions. The element can hold these values
|
The EventDto
object
Element | Type | Description |
---|---|---|
entityId | string | Event identifier |
name | string | Event name |
sequenceNumber | integer | Event sequence number |
json{
"entityId": "SYNTHETIC_TEST-790745B687BE4D0E",
"name": "Browser monitor",
"frequencyMin": 10,
"enabled": true,
"type": "BROWSER",
"createdFrom": "GUI",
"script": {
"type": "clickpath",
"version": "1.0",
"configuration": {
"device": {
"mobile": false,
"touchEnabled": false,
"width": 1024,
"height": 768,
"scaleFactor": 1
}
},
"events": [
{
"type": "navigate",
"description": "Loading of \"https://orf.at\"",
"url": "https://orf.at",
"wait": {
"waitFor": "page_complete"
}
}
]
},
"locations": [
"GEOLOCATION-0A41430434C388A9"
],
"anomalyDetection": {
"outageHandling": {
"globalOutage": true,
"localOutage": false,
"localOutagePolicy": {
"affectedLocations": 1,
"consecutiveRuns": 3
}
},
"loadingTimeThresholds": {
"enabled": true,
"thresholds": [
{
"type": "TOTAL",
"valueMs": 10000
}
]
}
},
"tags": [
{
"context": "CONTEXTLESS",
"key": "blabla"
}
],
"managementZones": [
{
"id": "-7832237287622819191",
"name": "!!allSynthetic"
}
],
"automaticallyAssignedApps": [
"APPLICATION-7ADA0EF404C7C545"
],
"manuallyAssignedApps": [
"APPLICATION-4ADF0EF407C7C545"
],
"keyPerformanceMetrics": {
"loadActionKpm": "VISUALLY_COMPLETE",
"xhrActionKpm": "VISUALLY_COMPLETE"
},
"events": [
{
"entityId": "SYNTHETIC_TEST_STEP-2E6FDA5B4BC39A27",
"name": "Loading of \"https://orf.at\"",
"sequenceNumber": 1
}
]
}
HTTP
The HttpSyntheticMonitor
object
The synthetic monitor.
The actual set of fields depends the type of the monitor. Find the list of actual objects in the description of the type field or see Synthetic monitors API - JSON models.
Element | Type | Description |
---|---|---|
requests | Request | A list of events for this monitor |
The RequestDto
object
Element | Type | Description |
---|---|---|
entityId | string | Request identifier |
name | string | Request name |
sequenceNumber | integer | Request sequence number |
json{
"entityId": "HTTP_CHECK-B58DA1B8B892A05C",
"name": "HTTP monitor",
"frequencyMin": 1,
"enabled": true,
"type": "HTTP",
"createdFrom": "GUI",
"script": {
"version": "1.0",
"requests": [
{
"description": "orf.at",
"url": "https://orf.at",
"method": "GET",
"requestBody": "",
"configuration": {
"acceptAnyCertificate": true,
"followRedirects": true
},
"preProcessingScript": "",
"postProcessingScript": ""
}
]
},
"locations": [
"SYNTHETIC_LOCATION-61F43EECF5FB8345"
],
"anomalyDetection": {
"outageHandling": {
"globalOutage": true,
"localOutage": false,
"localOutagePolicy": {
"affectedLocations": 1,
"consecutiveRuns": 3
}
},
"loadingTimeThresholds": {
"enabled": false,
"thresholds": [
{
"type": "TOTAL",
"valueMs": 10000
}
]
}
},
"tags": [],
"managementZones": [
{
"id": "-7832237287622819191",
"name": "!!allSynthetic"
}
],
"automaticallyAssignedApps": [
"APPLICATION-4ADF0EF407C7C545"
],
"manuallyAssignedApps": [
"APPLICATION-7ADA0EF404C7C545"
],
"requests": [
{
"entityId": "HTTP_CHECK_STEP-E9208469D53BAF38",
"name": "orf.at",
"sequenceNumber": 1
}
]
}
Variations of the SyntheticMonitorUpdate
object
BROWSER
The BrowserSyntheticMonitorUpdate
object
The synthetic monitor update.
The actual set of fields depends the type of the monitor. Find the list of actual objects in the description of the type field or see Synthetic monitors API - JSON models.
Element | Type | Description |
---|---|---|
keyPerformanceMetrics | Key | The key performance metrics configuration. |
The KeyPerformanceMetrics
object
The key performance metrics configuration.
Element | Type | Description |
---|---|---|
loadActionKpm | string | Defines the key performance metric for load actions. The element can hold these values
|
xhrActionKpm | string | Defines the key performance metric for XHR actions. The element can hold these values
|
json{
"name": "Browser monitor",
"frequencyMin": 10,
"enabled": true,
"type": "BROWSER",
"script": {
"type": "clickpath",
"version": "1.0",
"configuration": {
"device": {
"mobile": false,
"touchEnabled": false,
"width": 1024,
"height": 768,
"scaleFactor": 1
}
},
"events": [
{
"type": "navigate",
"description": "Loading of \"https://orf.at\"",
"url": "https://orf.at",
"wait": {
"waitFor": "page_complete"
}
}
]
},
"locations": [
"GEOLOCATION-0A41430434C388A9"
],
"anomalyDetection": {
"outageHandling": {
"globalOutage": true,
"localOutage": false,
"localOutagePolicy": {
"affectedLocations": 1,
"consecutiveRuns": 3
}
},
"loadingTimeThresholds": {
"enabled": true,
"thresholds": [
{
"type": "TOTAL",
"valueMs": 10000
}
]
}
},
"tags": [
{
"context": "CONTEXTLESS",
"key": "blabla"
}
],
"manuallyAssignedApps": [
"APPLICATION-4ADF0EF407C7C545"
],
"keyPerformanceMetrics": {
"loadActionKpm": "VISUALLY_COMPLETE",
"xhrActionKpm": "VISUALLY_COMPLETE"
}
}
HTTP
The HttpSyntheticMonitorUpdate
object
The synthetic monitor update.
The actual set of fields depends the type of the monitor. Find the list of actual objects in the description of the type field or see Synthetic monitors API - JSON models.
Element | Type | Description |
---|---|---|
frequencyMin | integer | The frequency of the monitor, in minutes. You can use one of the following values: |
anomalyDetection | Anomaly | The anomaly detection configuration. |
type | string | Defines the actual set of fields depending on the value. See one of the following objects:
The element can hold these values
|
name | string | The name of the monitor. |
locations | string[] | A list of locations from which the monitor is executed. To specify a location, use its entity ID. |
enabled | boolean | The monitor is enabled ( |
script | object | The script of a browser or HTTP monitor. |
tags | Tag | A set of tags assigned to the monitor. You can specify only the value of the tag here and the |
manuallyAssignedApps | string[] | A set of manually assigned applications. |
The AnomalyDetection
object
The anomaly detection configuration.
Element | Type | Description |
---|---|---|
outageHandling | Outage | Outage handling configuration. |
loadingTimeThresholds | Loading | Performance thresholds configuration. |
The OutageHandlingPolicy
object
Outage handling configuration.
Element | Type | Description |
---|---|---|
globalOutage | boolean | When enabled ( |
globalOutagePolicy | Global | Global outage handling configuration. |
localOutage | boolean | When enabled ( |
localOutagePolicy | Local | Local outage handling configuration. Alert if affectedLocations of locations are unable to access the web application consecutiveRuns times consecutively. |
retryOnError | boolean | Schedule retry if browser monitor execution results in a fail. For HTTP monitors this property is ignored. |
The GlobalOutagePolicy
object
Global outage handling configuration.
Element | Type | Description |
---|---|---|
consecutiveRuns | integer | Alert if all locations are unable to access the web application X times consecutively. |
The LocalOutagePolicy
object
Local outage handling configuration.
Alert if affectedLocations of locations are unable to access the web application consecutiveRuns times consecutively.
Element | Type | Description |
---|---|---|
affectedLocations | integer | The number of affected locations to trigger an alert. |
consecutiveRuns | integer | The number of consecutive fails to trigger an alert. |
The LoadingTimeThresholdsPolicyDto
object
Performance thresholds configuration.
Element | Type | Description |
---|---|---|
enabled | boolean | Performance threshold is enabled ( |
thresholds | Loading | The list of performance threshold rules. |
The LoadingTimeThreshold
object
The performance threshold rule.
Element | Type | Description |
---|---|---|
type | string | The type of the threshold: total loading time or action loading time. The element can hold these values
|
valueMs | integer | Notify if monitor takes longer than X milliseconds to load. |
requestIndex | integer | Specify the request to which an ACTION threshold applies. |
eventIndex | integer | Specify the event to which an ACTION threshold applies. |
The TagWithSourceInfo
object
Tag with source of a Dynatrace entity.
Element | Type | Description |
---|---|---|
source | string | The source of the tag, such as USER, RULE_BASED or AUTO The element can hold these values
|
context | string | The origin of the tag, such as AWS or Cloud Foundry. Custom tags use the The element can hold these values
|
key | string | The key of the tag. Custom tags have the tag value here. |
value | string | The value of the tag. Not applicable to custom tags. |
json{
"name": "HTTP monitor",
"frequencyMin": 1,
"enabled": true,
"type": "HTTP",
"script": {
"version": "1.0",
"requests": [
{
"description": "orf.at",
"url": "https://orf.at",
"method": "GET",
"requestBody": "",
"configuration": {
"acceptAnyCertificate": true,
"followRedirects": true
},
"preProcessingScript": "",
"postProcessingScript": ""
}
]
},
"locations": [
"SYNTHETIC_LOCATION-61F43EECF5FB8345"
],
"anomalyDetection": {
"outageHandling": {
"globalOutage": true,
"localOutage": false,
"localOutagePolicy": {
"affectedLocations": 1,
"consecutiveRuns": 3
}
},
"loadingTimeThresholds": {
"enabled": false,
"thresholds": [
{
"type": "TOTAL",
"valueMs": 10000
}
]
}
},
"tags": [],
"manuallyAssignedApps": [
"APPLICATION-7ADA0EF404C7C545"
]
}
- Synthetic Monitoring
Learn about Synthetic Monitoring and how to create a single-URL browser monitor, a browser clickpath, or an HTTP monitor.