Получение списка событий

Материал из Dynatrace

Список событий, произошедших в указанный период времени, вместе с их свойствами.

Запрос создает application/jsonполезную нагрузку.

Первых компаний, внедривших

Этот запрос является выпуском Early Adopter и может быть изменен несовместимым образом.

ПОЛУЧИТЬ Удалось https://{your-domain}/e/{your-environment-id}/api/v2/events
SaaS https://{your-environment-id}.live.dynatrace.com/api/v2/events
Окружающая среда ActiveGate https://{your-activegate-domain}/e/{your-environment-id}/api/v2/events

Аутентификация

Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия Чтение событий ( events.read​​) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .

Параметры

Параметр Тип Описание В Необходимый
ключ следующей страницы нить Курсор для следующей страницы результатов. Вы можете найти его в поле nextPageKey предыдущего ответа.

Первая страница всегда возвращается, если вы не укажете параметр запроса nextPageKey .

Когда nextPageKey настроен на получение последующих страниц, вы должны опустить все остальные параметры запроса.

запрос необязательный
размер страницы целое число Количество событий в полезной нагрузке одного ответа.

Максимально допустимый размер страницы — 1000.

Если не установлено, используется 100.

запрос необязательный
от нить Начало запрошенного таймфрейма.

Вы можете использовать один из следующих форматов:

  • Отметка времени в миллисекундах UTC.
  • Человекочитаемый формат 2021-01-25T05:57:01.123+01:00. Если часовой пояс не указан, используется UTC. Вы можете использовать пробел вместо T. Секунды и доли секунды не являются обязательными.
  • Относительный таймфрейм, назад. Формат: now-NU/A, где Nколичество времени, Uединица времени и Aвыравнивание. Выравнивание округляет все меньшие значения до ближайшего нуля в прошлом. Например, now-1y/wэто один год назад, выровненный на неделю. Вы также можете указать относительный таймфрейм без выравнивания: now-NU. Поддерживаемые единицы времени для относительного таймфрейма:
    • m: минут
    • h: часы
    • d: дней
    • w: недели
    • M: месяцы
    • y: годы

Если не установлено, используется относительный таймфрейм в два часа ( now-2h).

запрос необязательный
к нить Конец запрошенного периода времени.

Вы можете использовать один из следующих форматов:

  • Отметка времени в миллисекундах UTC.
  • Человекочитаемый формат 2021-01-25T05:57:01.123+01:00. Если часовой пояс не указан, используется UTC. Вы можете использовать пробел вместо T. Секунды и доли секунды не являются обязательными.
  • Относительный таймфрейм, назад. Формат: now-NU/A, где Nколичество времени, Uединица времени и Aвыравнивание. Выравнивание округляет все меньшие значения до ближайшего нуля в прошлом. Например, now-1y/wэто один год назад, выровненный на неделю. Вы также можете указать относительный таймфрейм без выравнивания: now-NU. Поддерживаемые единицы времени для относительного таймфрейма:
    • m: минут
    • h: часы
    • d: дней
    • w: недели
    • M: месяцы
    • y: годы

Если не установлено, используется текущая метка времени.

запрос необязательный
селектор событий нить Определяет область запроса. В ответ включаются только события, соответствующие указанным критериям.

Вы можете добавить один или несколько из перечисленных ниже критериев. Для каждого критерия можно указать несколько значений, разделенных запятыми, если не указано иное. Если указано несколько значений, применяется логика ИЛИ .

  • Идентификатор события: eventId("id-1", "id-2").
  • ID связанного объекта: entityId("id-1", "id-2").
  • Статус события: status("OPEN")или status("CLOSED"). Вы можете указать только один статус.
  • Идентификатор зоны управления: managementZoneId("123", "321").
  • Тип события: eventType("event-type"). Вы можете указать только один тип события. Вы можете получить список возможных типов событий с помощью вызова типов событий GET .
  • Идентификатор корреляции: correlationId("id-1", "id-2").
  • Произошло во время технического обслуживания (правда, ложь): underMaintenance(true).
  • Уведомления подавляются (true, false): suppressAlert(true).
  • Создание проблемы подавляется (true, false): suppressProblem(true).
  • Частое событие (истина, ложь): frequentEvent(true).
  • Свойство события: property.<key>("value-1", "value-2").

Чтобы задать несколько критериев, разделите их запятыми ( ,). В ответ включаются только результаты, соответствующие всем критериям.

запрос необязательный
селектор объектов нить Область сущности запроса. Вы должны установить один из этих критериев:
  • Тип объекта:type("TYPE")
  • Идентификатор объекта Dynatrace: entityId("id"). Вы можете указать несколько идентификаторов, разделенных запятой ( entityId("id-1","id-2")). Все запрошенные сущности должны быть одного типа.

Вы можете добавить один или несколько следующих критериев. Значения чувствительны к регистру, и EQUALSоператор используется, если не указано иное.

  • Тег: tag("value"). Теги в форматах [context]key:value, key:valueи valueобнаруживаются и анализируются автоматически. Любые двоеточия ( :), которые являются частью ключа или значения, должны быть экранированы обратной косой чертой ( \), в противном случае она будет интерпретироваться как разделитель между ключом и значением. Все значения тегов чувствительны к регистру.
  • Идентификатор зоны управления:mzId(123)
  • Название зоны управления:mzName("value")
  • Имя объекта: entityName("value"). По умолчанию это фильтрует объекты, имя которых содержит заданное значение и не чувствительно к регистру. Доступны следующие модификации:
    • entityName.equals: изменяет оператор на EQUALS.
    • entityName.startsWith: изменяет оператор на BEGINS WITH.
    • entityName.in: позволяет указать несколько значений. Оператор EQUALSобращается.
    • caseSensitive(entityName("value")): принимает любой критерий имени сущности в качестве аргументов и делает значение чувствительным к регистру.
  • Состояние здоровья (ЗДОРОВЫЙ, НЕЗДОРОВЫЙ):healthState("HEALTHY")
  • Отметка времени первого увиденного: firstSeenTms.<operator>(now-3h). Используйте любой формат метки времени из параметров from / to . Доступны следующие операторы:
    • lte: раньше или в указанное время
    • lt: раньше указанного времени
    • gte: позже или в указанное время
    • gt: позже указанного времени
  • Атрибут объекта: <attribute>("value1","value2")и <attribute>.exists(). Чтобы получить список доступных атрибутов, выполните запрос типа сущности GET и проверьте поле свойств ответа.
  • Отношения: fromRelationships.<relationshipName>()и toRelationships.<relationshipName>(). Критерий принимает селектор объектов в качестве атрибута. Чтобы получить список доступных отношений, выполните запрос типа объекта GET и проверьте поля fromRelationships и toRelationships .
  • Отрицание: not(<criterion>). Инвертирует любой критерий, кроме type .

Дополнительные сведения см. в разделе Селектор объектов в документации Dynatrace.

Чтобы задать несколько критериев, разделите их запятой ( ,). Например, type("HOST"),healthState("HEALTHY"). В ответ включаются только результаты, соответствующие всем критериям.

Длина строки ограничена 10 000 символов.

Количество объектов, которые можно выбрать, ограничено 10000.

запрос необязательный

Ответ

Коды ответов

Код Тип Описание
200 Список событий Успех. Ответ содержит список событий.

Объекты тела ответа

Объект _ EventList

Список событий.

Элемент Тип Описание
предупреждения строка [] Список предупреждений.

Может быть null.

События Событие [] Список событий.

Может быть null.

размер страницы целое число Количество записей на странице.

Может быть null.

ключ следующей страницы нить Курсор для следующей страницы результатов. Имеет значение nullна последней странице.

Используйте его в параметре запроса nextPageKey для получения последующих страниц результата.

Может быть null.

общее количество целое число Общее количество записей в результате.

Объект _ Event

Конфигурация события.

Элемент Тип Описание
тип события нить Тип события.

Может быть null.

идентификатор сущности Заглушка сущности Краткое представление отслеживаемого объекта.

Может быть null.

сущностьТеги М Е тег [] Список тегов связанного объекта.

Может быть null.

на техобслуживании логический Если true, событие произошло, когда отслеживаемая система находилась на обслуживании.

Может быть null.

подавлять оповещение логический Состояние предупреждения во время технического обслуживания :
  • false: Оповещение работает как обычно.
  • true: Оповещение отключено.

Может быть null.

подавлятьпроблему логический Статус обнаружения проблемы во время технического обслуживания :
  • false: Обнаружение проблем работает как обычно.
  • true: обнаружение проблем отключено.

Может быть null.

частособытие логический Если true, событие происходит часто .

Частое событие не вызывает проблем.

Может быть null.

управлениеЗоны Зона управления [] Список всех зон управления, которым принадлежит событие.

Может быть null.

идентификатор события нить Идентификатор события.

Может быть null.

характеристики Свойство события [] Список свойств события.

Может быть null.

статус нить Статус события.

Элемент может содержать эти значения

  • CLOSED
  • OPEN

Может быть null.

время начала целое число Отметка времени возникновения события в миллисекундах UTC.

Может быть null.

время окончания целое число Отметка времени закрытия события в миллисекундах UTC.

Имеет значение, nullесли событие все еще активно.

Может быть null.

заглавие нить Название события.

Может быть null.

идентификатор корреляции нить Идентификатор корреляции события.

Может быть null.

Объект _ EntityStub

Краткое представление отслеживаемого объекта.

Элемент Тип Описание
идентификатор сущности Идентификатор объекта Краткое представление отслеживаемого объекта.

Может быть null.

название нить Имя сущности.

Не включается в ответ, если сущность с соответствующим идентификатором не найдена.

Может быть null.

Объект _ EntityId

Краткое представление отслеживаемого объекта.

Элемент Тип Описание
я бы нить Идентификатор сущности.

Может быть null.

тип нить Тип сущности.

Может быть null.

Объект _ METag

Тег отслеживаемого объекта.

Элемент Тип Описание
представление строки нить Строковое представление тега.

Может быть null.

ценность нить Значение тега.

Может быть null.

ключ нить Ключ тега.

Может быть null.

контекст нить Происхождение тега, например AWS или Cloud Foundry.

Пользовательские теги используют это CONTEXTLESSзначение.

Может быть null.

Объект _ ManagementZone

Краткое представление зоны управления.

Элемент Тип Описание
название нить Имя зоны управления.

Может быть null.

я бы нить Идентификатор зоны управления.

Может быть null.

Объект _ EventProperty

Свойство события.

Элемент Тип Описание
ценность нить Значение свойства события.

Может быть null.

ключ нить Ключ свойства события.

Может быть null.

JSON-модель тела ответа

{
  "warnings": [
    "string"
  ],
  "events": [
    {
      "eventType": "LOW_DISK_SPACE",
      "entityId": {
        "entityId": {
          "id": "string",
          "type": "string"
        },
        "name": "string"
      },
      "entityTags": [
        {
          "stringRepresentation": "string",
          "value": "string",
          "key": "string",
          "context": "string"
        }
      ],
      "underMaintenance": true,
      "suppressAlert": true,
      "suppressProblem": true,
      "frequentEvent": true,
      "managementZones": [
        {
          "name": "string",
          "id": "string"
        }
      ],
      "eventId": "4293884258445543163_1564039524182",
      "properties": [
        {
          "value": "string",
          "key": "string"
        }
      ],
      "status": "OPEN",
      "startTime": 1564039524182,
      "endTime": 1564039524182,
      "title": "High CPU load on host X",
      "correlationId": "933613657e1c8fcf"
    }
  ],
  "pageSize": 1,
  "nextPageKey": "AQAAABQBAAAABQ==",
  "totalCount": 1
}

Пример

В этом примере в запросе перечислены все события PROCESS_RESTART ( eventSelector=eventType("PROCESS_RESTART")), произошедшие за последние 2 часа ( from=now-2h), когда окно обслуживания было активным ( eventSelector=underMaintenance(true)). Результат усекается до двух событий.

Маркер API передается в заголовке авторизации .

Завиток

curl --request GET \
  --url 'https://mySampleEnv.live.dynatrace.com/api/v2/events?eventSelector=eventType(%22PROCESS_RESTART%22)%2CunderMaintenance(true)&from=now-2h' \
  --header 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890'

URL-адрес запроса

https://mySampleEnv.live.dynatrace.com/api/v2/events?eventSelector=eventType(%22PROCESS_RESTART%22)%2CunderMaintenance(true)&from=now-2h

Тело ответа

{
  "totalCount": 43,
  "pageSize": 100,
  "events": [
    {
      "eventId": "-6475311485380369979_1628500180000",
      "startTime": 1628500180000,
      "endTime": 1628500240000,
      "eventType": "PROCESS_RESTART",
      "title": "Process restart",
      "entityId": {
        "entityId": {
          "id": "PROCESS_GROUP_INSTANCE-03F98EA8639FD052",
          "type": "PROCESS_GROUP_INSTANCE"
        },
        "name": "IIS app pool dotNetFrontend_easyTravel_x64"
      },
      "properties": [
        {
          "key": "dt.event.group_label",
          "value": "Process restart"
        }
      ],
      "status": "OPEN",
      "entityTags": [
        {
          "context": "CONTEXTLESS",
          "key": "easyTravel",
          "stringRepresentation": "easyTravel"
        },
        {
          "context": "CONTEXTLESS",
          "key": "tech",
          "value": "IIS",
          "stringRepresentation": "tech:IIS"
        },
        {
          "context": "CONTEXTLESS",
          "key": "tech",
          "value": ".NET",
          "stringRepresentation": "tech:.NET"
        },
        {
          "context": "CONTEXTLESS",
          "key": "hosts",
          "value": "w-077",
          "stringRepresentation": "hosts:w-077"
        },
        {
          "context": "CONTEXTLESS",
          "key": "Infrastructure",
          "value": "Windows",
          "stringRepresentation": "Infrastructure:Windows"
        },
        {
          "context": "CONTEXTLESS",
          "key": "dotNetFrontend",
          "stringRepresentation": "dotNetFrontend"
        },
      ],
      "managementZones": [
        {
          "id": "9130632296508575249",
          "name": "Easytravel"
        },
        {
          "id": "-6239538939987181652",
          "name": "frontend"
        },
        {
          "id": "5130731705740636866",
          "name": "Windows"
        }
      ],
      "underMaintenance": true,
      "suppressAlert": true,
      "suppressProblem": true,
      "frequentEvent": false
    },
    {
      "eventId": "-231290298591263162_1628500000000",
      "startTime": 1628500000000,
      "endTime": 1628500060000,
      "eventType": "PROCESS_RESTART",
      "title": "Process restart",
      "entityId": {
        "entityId": {
          "id": "PROCESS_GROUP_INSTANCE-00CA9B0F1AE9BAF8",
          "type": "PROCESS_GROUP_INSTANCE"
        },
        "name": "chromedriver_linux64"
      },
      "properties": [
        {
          "key": "dt.event.group_label",
          "value": "Process restart"
        }
      ],
      "status": "CLOSED",
      "entityTags": [
        {
          "context": "CONTEXTLESS",
          "key": "Infrastructure",
          "value": "Linux",
          "stringRepresentation": "Infrastructure:Linux"
        },
        {
          "context": "CONTEXTLESS",
          "key": "hosts",
          "value": "l-008",
          "stringRepresentation": "hosts:l-008"
        }
      ],
      "managementZones": [
        {
          "id": "2631544906797876001",
          "name": "Linux"
        }
      ],
      "underMaintenance": true,
      "suppressAlert": false,
      "suppressProblem": false,
      "frequentEvent": false
    }
  ],
  "warnings": []
}

Код ответа

200