GET монитор
Получает свойства указанного монитора, включая его сценарий JSON.
| GET | Managed | https://{your-domain}/e/{your-environment-id}/api/v1/synthetic/monitors/{monitorId}
 | 
| Cреда ActiveGate | https://{your-activegate-domain}/e/{your-environment-id}/api/v1/synthetic/monitors/{monitorId}
 | 
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с областью создания и чтения синтетических мониторов, местоположений и узлов ( ExternalSyntheticIntegration) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Параметры
| Параметр | Тип | Описание | In | Необходимость | 
|---|---|---|---|---|
| monitorId | string | ID требуемого синтетического монитора | path | требуется | 
Ответ
Чтобы найти все варианты моделей, зависящие от типа модели, см. раздел модели JSON .
Коды ответов
| Код | Тип | Описание | 
|---|---|---|
| 200 | SyntheticMonitor | Успех | 
Объекты тела ответа
Объект SyntheticMonitor
Синтетический монитор.
Фактический набор полей зависит от типа монитора. Список актуальных объектов ищите в описании поля типа или смотрите Синтетические мониторы API-модели JSON .
| Элемент | Тип | Описание | 
|---|---|---|
| entityId | string | Идентификатор объекта монитора. | 
| name | string | Название монитора. | 
| frequencyMin | integer | Частота монитора в минутах.
 Вы можете использовать одно из следующих значений:   | 
| enabled | boolean | Монитор включен ( true) или отключен ( false).
 | 
| type | string | Определяет фактический набор полей в зависимости от значения. См. один из следующих объектов:
 Элемент может содержать эти значения 
  | 
| createdFrom | string | Происхождение монитора
 Элемент может содержать эти значения 
  | 
| script | object | Скрипт браузера или HTTP-монитора. | 
| locations | string[] | Список местоположений, из которых выполняется монитор.
 Чтобы указать местоположение, используйте его идентификатор объекта.  | 
| anomalyDetection | AnomalyDetection | Конфигурация обнаружения аномалий. | 
| tags | TagWithSourceInfo[] | Набор тегов, присвоенных монитору. | 
| managementZones | ManagementZone[] | Набор зон управления, к которым принадлежит монитор. | 
| automaticallyAssignedApps | string[] | Набор автоматически назначаемых приложений. | 
| manuallyAssignedApps | string[] | Набор назначенных вручную приложений. | 
Объект AnomalyDetection
Конфигурация обнаружения аномалий.
| Элемент | Тип | Описание | 
|---|---|---|
| outageHandling | OutageHandlingPolicy | Конфигурация обработки сбоев. | 
| loadingTimeThresholds | LoadingTimeThresholdsPolicyDto | Настройка порогов производительности. | 
Объект OutageHandlingPolicy
Конфигурация обработки сбоев.
| Элемент | Тип | Описание | 
|---|---|---|
| globalOutage | boolean | Когда включено ( true), генерирует проблему и отправляет оповещение, когда монитор недоступен во всех настроенных местоположениях.
 | 
| globalOutagePolicy | GlobalOutagePolicy | Конфигурация глобальной обработки сбоев. | 
| localOutage | boolean | Если этот параметр включен ( true), генерирует проблему и отправляет оповещение, когда монитор недоступен для одного или нескольких последовательных запусков в любом месте.
 | 
| localOutagePolicy | LocalOutagePolicy | Конфигурация локальной обработки сбоев.
 Предупреждать, если затронутые местоположения местоположений не могут получить доступ к веб-приложению последовательно Запускается несколько раз подряд.  | 
| retryOnError | boolean | Запланируйте повторную попытку, если выполнение монитора браузера приведет к сбою. Для HTTP-мониторов это свойство игнорируется. | 
Объект GlobalOutagePolicy
Конфигурация глобальной обработки сбоев.
| Элемент | Тип | Описание | 
|---|---|---|
| consecutiveRuns | integer | Оповещение, если все местоположения не могут получить доступ к веб-приложению X раз подряд. | 
Объект LocalOutagePolicy
Конфигурация локальной обработки сбоев.
Предупреждать, если затронутые местоположения местоположений не могут получить доступ к веб-приложению последовательно Запускается несколько раз подряд.
| Элемент | Тип | Описание | 
|---|---|---|
| affectedLocations | integer | Количество затронутых местоположений, для которых выдается оповещение. | 
| consecutiveRuns | integer | Количество последовательных неудачных попыток вызвать оповещение. | 
Объект LoadingTimeThresholdsPolicyDto
Настройка порогов производительности.
| Элемент | Тип | Описание | 
|---|---|---|
| enabled | boolean | Порог производительности включен ( true) или отключен ( false).
 | 
| thresholds | LoadingTimeThreshold[] | Список правил порога производительности. | 
Объект LoadingTimeThreshold
Правило порога производительности.
| Элемент | Тип | Описание | 
|---|---|---|
| type | string | Тип порога: общее время загрузки или время загрузки действия.
 Элемент может содержать эти значения 
  | 
| valueMs | integer | Уведомлять, если загрузка монитора занимает больше X миллисекунд. | 
| requestIndex | integer | Укажите запрос, к которому применяется порог ACTION. | 
| eventIndex | integer | Укажите событие, к которому применяется порог ACTION. | 
Объект TagWithSourceInfo
Тег с источником объекта Dynatrace.
| Элемент | Тип | Описание | 
|---|---|---|
| source | string | Источник тега, например USER, RULE_BASED или AUTO.
 Элемент может содержать эти значения 
  | 
| context | string | Происхождение тега, например AWS или Cloud Foundry.
 Пользовательские теги используют это  Элемент может содержать эти значения 
  | 
| key | string | Ключ тега.
 Пользовательские теги здесь имеют значение тега.  | 
| value | string | Значение тега.
 Не применимо к пользовательским тегам.  | 
Объект ManagementZone
Конфигурация зоны управления.
| Элемент | Тип | Описание | 
|---|---|---|
| id | string | Идентификатор зоны управления. | 
| name | string | Имя зоны управления. | 
JSON-модель тела ответа
{
  "entityId": "string",
  "name": "string",
  "frequencyMin": 1,
  "enabled": true,
  "type": "BROWSER",
  "createdFrom": "API",
  "script": {},
  "locations": [
    "string"
  ],
  "anomalyDetection": {
    "outageHandling": {
      "globalOutage": true,
      "globalOutagePolicy": {
        "consecutiveRuns": 1
      },
      "localOutage": true,
      "localOutagePolicy": {
        "affectedLocations": 1,
        "consecutiveRuns": 1
      },
      "retryOnError": true
    },
    "loadingTimeThresholds": {
      "enabled": true,
      "thresholds": [
        {
          "type": "ACTION",
          "valueMs": 1,
          "requestIndex": 1,
          "eventIndex": 1
        }
      ]
    }
  },
  "tags": [
    {
      "source": "AUTO",
      "context": "AWS",
      "key": "string",
      "value": "string"
    }
  ],
  "managementZones": [
    {
      "id": "string",
      "name": "string"
    }
  ],
  "automaticallyAssignedApps": [
    "string"
  ],
  "manuallyAssignedApps": [
    "string"
  ]
}
Пример
В этом примере в запросе перечислены параметры монитора ruscomtech.ru , который представляет собой путь клика браузера , который ведет на https://www.ruscomtech.ru/ и подписывается на бесплатную пробную версию.
Маркер API передается в заголовке авторизации .
Curl
curl -X GET \
  https://mySampleEnv.live.dynatrace.com/api/v1/synthetic/monitors/SYNTHETIC_TEST-0000000000025434 \
  -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890'
URL-адрес запроса
https://mySampleEnv.live.dynatrace.com/api/v1/synthetic/monitors/SYNTHETIC_TEST-0000000000025434
Тело ответа
{
  "entityId": "SYNTHETIC_TEST-0000000000025434",
  "name": "dynatrace.com",
  "frequencyMin": 15,
  "enabled": true,
  "type": "browser",
  "script": {
    "type": "clickpath",
    "version": "1.0",
    "configuration": {
      "device": {
        "deviceName":"Desktop",
        "orientation":"landscape"
      }
    },
    "events": [
      {
        "type":"navigate",
        "description":"Loading of \"http://www.dynatrace.com\"",
        "url":"http://www.dynatrace.com",
        "wait": {
          "waitFor":"page_complete"
        }
      },
      {
        "type":"click",
        "description":"click on \"Free trial\"",
        "target": {
          "locators": [
            {
              "type":"css",
              "value":"a:contains(\"Free trial\"):eq(1)"
            },
            {
              "type":"css",
              "value":".btn:eq(1)"
            },
            {
              "type":"css",
              "value":"#content div div div div div div div p:nth-child(3) a"
            },
            {
              "type":"css",
              "value":"#content div.homepage-hero-wrapper div.gallery div.flickity-viewport div.flickity-slider div.gallery-cell div.section div.column p.cta--row a.btn:eq(0)"
            }
          ]
        },
        "button": 0,
        "wait": {
          "waitFor":"page_complete"
        }
      }
      {
        "type":"click",
        "description":"click on \"email\"",
        "target": {
          "locators": [
            {
              "type":"css",
              "value":"input[type=\"email\"][name=\"email\"]:eq(0)"
            },
            {
              "type":"dom",
              "value":"document.forms[0][\"email\"]"
            },
            {
              "type":"css",
              "value":".inputfield:eq(0)"
            },
            {
              "type":"css",
              "value":"#content div div:nth-child(2) form:nth-child(9) input:nth-child(3)"
            },
            {
              "type":"css",
              "value":"#content div.section div.tile form.cta input.inputfield:eq(0)"
            }
          ]
        },
        "button":0
      },
      {
        "type":"keystrokes",
        "description":"keystrokes on \"email\"",
        "target":{
          "locators":[
            {
              "type":"css",
              "value":"input[type=\"email\"][name=\"email\"]:eq(0)"
            },
            {
              "type":"dom",
              "value":"document.forms[0][\"email\"]"
            },
            {
              "type":"css",
              "value":".inputfield:eq(0)"
            },
            {
              "type":"css",
              "value":"#content div div:nth-child(2) form:nth-child(9) input:nth-child(3)"
            },
            {
              "type":"css",
              "value":"#content div.section div.tile form.cta input.inputfield:eq(0)"
            }
          ]
        },
        "textValue":"sample@sample.com",
        "masked":false,
        "simulateBlurEvent":true
      },
      {
        "type":"click",
        "description":"click on \"Start free trial\"",
        "target":{
          "locators":[
            {
              "type":"css",
              "value":"input[type=\"submit\"]:eq(0)"
            },
            {
              "type":"dom",
              "value":"document.forms[0][19]"
            },
            {
              "type":"css",
              "value":".btn:eq(1)"
            },
            {
              "type":"css",
              "value":"#content div div:nth-child(2) form:nth-child(9) div:nth-child(22) input"
            },
            {
              "type":"css",
              "value":"#content div.section div.tile form.cta div.cta__formgroup input.btn:eq(0)"
            }
          ]
        },
        "button":0,
        "wait":{
          "waitFor":"page_complete"
        }
      }
    ]
  },
  "locations": [
    "GEOLOCATION-B69A5A40388CC698",
    "GEOLOCATION-A9022AAFA0763F56"
  ],
  "anomalyDetection": {
    "outageHandling": {
      "globalOutage": true,
      "localOutage": false,
      "localOutagePolicy": {
        "affectedLocations": 1,
        "consecutiveRuns": 3
      }
    },
    "loadingTimeThresholds": {
      "enabled": false,
      "thresholds": []
    }
  },
  "tags": [],
  "managementZones": [
    {
      "id": "-7832237287622819191",
      "name": "!!allSynthetic"
    }
  ]
}
Код ответа
200