Получение тегов

Материал из Dynatrace

Функция возвращает список всех настраиваемых тегов, назначенных указанным отслеживаемым объектам. Автоматически применяемые теги и импортированные теги не включаются.

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

GET Managed https://{your-domain}/e/{your-environment-id}/api/v2/tags
SaaS https://{your-environment-id}.live.dynatrace.com/api/v2/tags
Environment Активный Шлюз https://{your-activegate-domain}/e/{your-environment-id}/api/v2/tags

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

Чтобы выполнить этот запрос, вам необходимо разрешение на чтение сущностей ( entities.read) , назначенное вашему токену API. Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .

Параметры

Параметр Тип Описание In Необходимость
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 символов.

запрос требуется
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: годы

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

запрос необязательный
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: годы

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

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

Ответ

Коды ответов

Код Тип Описание
200 CustomEntityTags Успех

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

Объект _ CustomEntityTags

Список пользовательских тегов.

Элемент Тип Описание
totalCount integer Общее количество тегов в ответе.

Может быть null.

tags METag[] Список пользовательских тегов.

Объект _ METag

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

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

Может быть null.

value string Значение тега.

Может быть null.

key string Ключ тега.

Может быть null.

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

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

Может быть null.

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

{
  "totalCount": 2,
  "tags": [
    {
      "context": "CONTEXTLESS",
      "key": "mainApp",
      "stringRepresentation": "mainApp"
    },
    {
      "context": "CONTEXTLESS",
      "key": "bookings",
      "stringRepresentation": "bookings"
    }
  ]
}

Пример

В этом примере в запросе перечислены настраиваемые теги, которые применяются к службам, принадлежащим зонам управления с идентификатором 229130632296508575249 . Для этого параметру запроса entitySelector присваиваетсяtype("SERVICE"),mzId("9130632296508575249") значение .

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

Поскольку полный результат довольно длинный, он усечен до трех записей.

Curl

curl -L -X GET 'https://mySampleEnv.live.dynatrace.com/api/v2/tags?entitySelector=type(%22SERVICE%22),mzId(%229130632296508575249%22)' \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890'

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

https://mySampleEnv.live.dynatrace.com/api/v2/tags?entitySelector=type(%22SERVICE%22),mzId(%229130632296508575249%22)

Тело ответа

{
  "totalCount": 31,
  "tags": [
    {
      "context": "CONTEXTLESS",
      "key": "Billing",
      "stringRepresentation": "Billing"
    },
    {
      "context": "CONTEXTLESS",
      "key": "Booking",
      "stringRepresentation": "Booking"
    },
    {
      "context": "CONTEXTLESS",
      "key": "easytravel",
      "value": "backend",
      "stringRepresentation": "easytravel:backend"
    }
  ]
}

Код ответа

200