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

Материал из Документация Ключ-АСТРОМ

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

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

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

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

GET Managed https://{your-domain}/e/{your-environment-id}/api/v2/events
SaaS https://{your-environment-id}.live.dynatrace.com/api/v2/events
Окружающая среда АктивногоШлюза https://{your-activegate-domain}/e/{your-environment-id}/api/v2/events

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

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

Параметры

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

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

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

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

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

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

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

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

  • Отметка времени в миллисекундах 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).

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

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

  • Отметка времени в миллисекундах 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: годы

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

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

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

  • Идентификатор события: 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").

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

запрос необязательный
entitySelector string Область сущности запроса. Вы должны установить один из этих критериев:
  • Тип объекта:type("TYPE")
  • Идентификатор объекта Ключ-АСТРОМ: 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 .

Дополнительные сведения см. в разделе Селектор объектов в документации Ключ-АСТРОМ.

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

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

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

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

Ответ

Коды ответов

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

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

Объект _ EventList

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

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

Может быть null.

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

Может быть null.

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

Может быть null.

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

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

Может быть null.

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

Объект _ Event

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

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

Может быть null.

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

Может быть null.

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

Может быть null.

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

Может быть null.

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

Может быть null.

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

Может быть null.

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

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

Может быть null.

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

Может быть null.

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

Может быть null.

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

Может быть null.

статус string Статус события.

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

  • CLOSED
  • OPEN

Может быть null.

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

Может быть null.

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

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

Может быть null.

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

Может быть null.

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

Может быть null.

Объект _ EntityStub

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

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

Может быть null.

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

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

Может быть null.

Объект _ EntityId

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

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

Может быть null.

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

Может быть null.

Объект _ METag

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

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

Может быть null.

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

Может быть null.

ключ string Ключ тега.

Может быть null.

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

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

Может быть null.

Объект _ ManagementZone

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

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

Может быть null.

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

Может быть null.

Объект _ EventProperty

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

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

Может быть null.

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

Может быть 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