Получение точек данных

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

Извлекает параметры и точки данных указанной метрики.

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

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

Запрос использует в качестве полезной нагрузки формат application/json.

GET Managed https://{your-domain}/e/{your-environment-id}/api/v1/timeseries/{timeseriesIdentifier}
Окружающая среда АктивногоШлюза https://{your-activegate-domain}/e/{your-environment-id}/api/v1/timeseries/{timeseriesIdentifier}

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

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

Параметры

Для получения точек данных необходимо указать таймфрейм и тип агрегации.

Существует два взаимоисключающих способа установки таймфрейма:

  • Комбинация startTimestamp и endTimestamp .
  • relativeTime

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

Параметр Тип Описание In Необходимость
timeseriesIdentifier string Идентификатор временного ряда с учетом регистра, из которого вы хотите прочитать параметры и точки данных. path требуется
includeData boolean Флаг для включения точек данных в ответ. Установите для trueполучения точек данных. Также необходимо указать таймфрейм и тип агрегации.

По умолчанию falseзначение , что означает, что точки данных не включены.

query по желанию
aggregationType string Тип агрегации для результирующих точек данных.

Если запрошенная метрика не поддерживает указанную агрегацию, запрос приведет к ошибке.

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

  • AVG
  • COUNT
  • MAX
  • MEDIAN
  • MIN
  • PERCENTILE
  • SUM
query по желанию
startTimestamp integer Метка времени начала запрошенного таймфрейма в миллисекундах UTC. query по желанию
endTimestamp integer Отметка времени окончания запрошенного таймфрейма в миллисекундах (UTC).

Если позже текущего времени, Ключ-АСТРОМ автоматически использует текущее время.

Срок не должен превышать 6 месяцев.

query по желанию
predict boolean Флаг для прогнозирования будущих точек данных. query по желанию
relativeTime string Относительный таймфрейм, назад от текущего времени.

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

  • 10mins
  • 15mins
  • 2hours
  • 30mins
  • 3days
  • 5mins
  • 6hours
  • day
  • hour
  • min
  • month
  • week
query по желанию
queryMode string Тип результата, который должен вернуть вызов. Допустимые режимы результатов:

series: возвращает все точки данных временного ряда в указанном временном интервале. total: возвращает одно скалярное значение для указанного периода времени.

По умолчанию используется seriesрежим.

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

  • SERIES
  • TOTAL
query по желанию
entity string [] Фильтрует запрошенные точки данных по объекту, который должен их предоставить. Допустимые значения — идентификаторы объектов Ключ-АСТРОМ.

Вы можете указать несколько сущностей в следующем формате: entity=entity1&entity=entity2. Сущность должна соответствовать хотя бы одному из указанных идентификаторов.

Если выбранный объект не поддерживает запрошенный временной ряд, запрос приведет к ошибке.

query по желанию
tag string [] Фильтрует запрошенные точки данных по объекту, который должен их предоставить. Доставляются данные только от сущностей с указанным тегом.

Вы можете указать несколько тегов в следующем формате: tag=tag1&tag=tag2. Сущность должна соответствовать всем указанным тегам.

В случае тегов «ключ-значение», таких как импортированные теги AWS или CloudFoundry, используйте key:valueформат. Если есть также контекст, используйте [context]key:valueформат.

query по желанию
percentile integer Указывает, какой процентиль выбранной метрики времени отклика должен быть предоставлен.

Применимо только к PERCENTILEтипу агрегации.

Допустимые значения для процентиля находятся в диапазоне от 1 до 99.

Имейте в виду, что экспорт процентилей возможен только для метрик, основанных на времени отклика, таких как время отклика приложений и служб.

query по желанию
includeParentIds boolean Если установлено значение true, в результате отображаются сопоставления измерений между родительскими объектами и их дочерними объектами.

Например: SERVICE-0000000000000001, SERVICE_METHOD-0000000000000001

query по желанию
considerMaintenanceWindowsForAvailability boolean Исключите ( true) или включите ( false) точки данных из любого периода обслуживания , определенного в вашей среде. query по желанию

Ответ

Результатом является объект JSON, содержащий точки данных и параметры метрик.

Коды ответов

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

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

Объект TimeseriesQueryResult

Конфигурация метрики со всеми ее параметрами и, при необходимости, точками данных.

Элемент Тип Описание
timeseriesId string Идентификатор метрики.
displayName string Имя метрики в пользовательском интерфейсе.
dimensions string [] Точное разделение метрик, например, группа процессов и идентификатор процесса для какой-либо метрики, связанной с процессом.
aggregationTypes string [] Список разрешенных агрегаций для этой метрики.

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

  • AVG
  • COUNT
  • MAX
  • MEDIAN
  • MIN
  • PERCENTILE
  • SUM
unit string Единица измерения.

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

  • Billion (bilcount)
  • Bit (bit)
  • BitPerHour (bit/h)
  • BitPerMinute (bit/min)
  • BitPerSecond (bit/s)
  • Byte (B)
  • BytePerHour (B/h)
  • BytePerMinute (B/min)
  • BytePerSecond (B/s)
  • Cores
  • Count (count)
  • Day (ds)
  • DecibelMilliWatt (dBm)
  • G
  • GibiByte (GiB)
  • GigaByte (GB)
  • Hour (hs)
  • KibiByte (KiB)
  • KibiBytePerHour (KiB/h)
  • KibiBytePerMinute (KiB/min)
  • KibiBytePerSecond (KiB/s)
  • KiloByte (kB)
  • KiloBytePerHour (kB/h)
  • KiloBytePerMinute (kB/min)
  • KiloBytePerSecond (kB/s)
  • M
  • MSU
  • MebiByte (MiB)
  • MebiBytePerHour (MiB/h)
  • MebiBytePerMinute (MiB/min)
  • MebiBytePerSecond (MiB/s)
  • MegaByte (MB)
  • MegaBytePerHour (MB/h)
  • MegaBytePerMinute (MB/min)
  • MegaBytePerSecond (MB/s)
  • MicroSecond (µs)
  • MilliSecond (ms)
  • MilliSecondPerMinute (ms/min)
  • Million (milcount)
  • Minute (mins)
  • Month (mos)
  • N/A
  • NanoSecond (ns)
  • NanoSecondPerMinute (ns/min)
  • PerHour (count/h)
  • PerMinute (count/min)
  • PerSecond (count/s)
  • Percent (%)
  • Pixel (px)
  • Promille (‰)
  • Ratio
  • Second (s)
  • State
  • Unspecified
  • Week (ws)
  • Year (ys)
  • k
  • km/h
  • m/h
  • m/s
  • mCores
filter string Функция, из которой берется метрика.

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

  • ALL
  • BUILTIN
  • CUSTOM
  • PLUGIN
  • REMOTE_PLUGIN
detailedSource string Функция, из которой берется метрика.
pluginId string Идентификатор плагина, из которого создается метрика.
types string [] Определение типа технологии. Используется для группировки метрик под логическим именем технологии.
dataResult TimeseriesDataPointQueryResult Список точек данных метрики, а также их параметры.
warnings string [] Предупреждения, возникшие при создании метрики.

Объект TimeseriesDataPointQueryResult

Список точек данных метрики, а также их параметры.

Элемент Тип Описание
dataPoints object Точки данных метрики.

Объект JSON, который сопоставляет идентификатор объекта, предоставившего точки данных, и массив, состоящий из массивов значений с плавающей запятой точек данных.

Может содержать более одного идентификатора объекта на запись (например, хост и его сетевой интерфейс). В таких случаях идентификаторы объектов разделяются запятыми.

Точка данных содержит значение и отметку времени, когда это значение было записано.

Ключ-АСТРОМ хранит данные во временных интервалах. Объект dataPoints показывает метку времени начала слота. Если startTimestamp или endTimestamp вашего запроса находится внутри временного интервала данных, этот временной интервал включается в ответ. Из-за того, что временная метка первой точки данных находится за пределами указанного временного интервала, вы увидите более раннюю временную метку, чем указанная начальная временная метка в первой точке данных ответа.

Существует три версии точек данных:

  • Числовая точка данных: содержит числовое значение.
  • Точка данных перечисления: содержит значение перечисления, в настоящее время только для временных рядов доступности.
  • Точка данных прогноза: похожа на числовую точку данных, но содержит доверительный интервал, в пределах которого ожидаются будущие значения.
timeseriesId string Идентификатор метрики.
unit string Единица точек данных.

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

  • Billion (bilcount)
  • Bit (bit)
  • BitPerHour (bit/h)
  • BitPerMinute (bit/min)
  • BitPerSecond (bit/s)
  • Byte (B)
  • BytePerHour (B/h)
  • BytePerMinute (B/min)
  • BytePerSecond (B/s)
  • Cores
  • Count (count)
  • Day (ds)
  • DecibelMilliWatt (dBm)
  • G
  • GibiByte (GiB)
  • GigaByte (GB)
  • Hour (hs)
  • KibiByte (KiB)
  • KibiBytePerHour (KiB/h)
  • KibiBytePerMinute (KiB/min)
  • KibiBytePerSecond (KiB/s)
  • KiloByte (kB)
  • KiloBytePerHour (kB/h)
  • KiloBytePerMinute (kB/min)
  • KiloBytePerSecond (kB/s)
  • M
  • MSU
  • MebiByte (MiB)
  • MebiBytePerHour (MiB/h)
  • MebiBytePerMinute (MiB/min)
  • MebiBytePerSecond (MiB/s)
  • MegaByte (MB)
  • MegaBytePerHour (MB/h)
  • MegaBytePerMinute (MB/min)
  • MegaBytePerSecond (MB/s)
  • MicroSecond (µs)
  • MilliSecond (ms)
  • MilliSecondPerMinute (ms/min)
  • Million (milcount)
  • Minute (mins)
  • Month (mos)
  • N/A
  • NanoSecond (ns)
  • NanoSecondPerMinute (ns/min)
  • PerHour (count/h)
  • PerMinute (count/min)
  • PerSecond (count/s)
  • Percent (%)
  • Pixel (px)
  • Promille (‰)
  • Ratio
  • Second (s)
  • State
  • Unspecified
  • Week (ws)
  • Year (ys)
  • k
  • km/h
  • m/h
  • m/s
  • mCores
resolutionInMillisUTC integer Разрешение точек данных.
aggregationType string Тип агрегации точек данных.

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

  • AVG
  • COUNT
  • MAX
  • MEDIAN
  • MIN
  • PERCENTILE
  • SUM
entities object Список сущностей, из которых исходят точки данных.

Объект JSON, который сопоставляет идентификатор объекта в Ключ-АСТРОМ и фактическое имя объекта.

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

{
  "timeseriesId": "ru.ruscomtech.builtin:host.cpu.idle",
  "displayName": "CPU idle",
  "dimensions": [
    "HOST"
  ],
  "aggregationTypes": [
    "AVG",
    "SUM",
    "MIN",
    "MAX"
  ],
  "unit": "Percent",
  "filter": "BUILTIN",
  "detailedSource": "Infrastructure",
  "types": [],
  "dataResult": {
    "dataPoints": {
      "HOST-0000000000000007": [
        [
          1522220334000,
          89
        ]
      ]
    },
    "timeseriesId": "com.dynatrace.builtin:host.cpu.idle",
    "unit": "Percent",
    "entities": {
      "HOST-0000000000000007": "Laptop-8"
    },
    "resolutionInMillisUTC": 300000,
    "aggregationType": "AVG"
  }
}

Примечание о таймфрейме

Ключ-АСТРОМ хранит данные во временных интервалах. Объект dataPointsпоказывает начальную метку времени слота. Если startTimestampили endTimestampвашего запроса попадают в временной интервал данных, этот временной интервал будет включен в ответ. Из-за того, что временная метка первой точки данных лежит за пределами указанного временного интервала, вы увидите более раннюю временную метку, чем указанная startTimestampв первой точке данных ответа.

Пример

В этом примере запрос возвращает значения метрики Действия за сеанс ( ru.ruscomtech.builtin:app.actionspersession) за последний час для приложений APPLICATION-85A7CC и APPLICATION-8E41C8 .

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

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

Curl

curl -X GET \
  https://mySampleEnv.live.ruscomtech.ru/api/v1/timeseries/ru.ruscomtech.builtin:app.actionspersession?includeData=true&relativeTime=hour&aggregationType=avg&entity=APPLICATION-85A7CC&entity=APPLICATION-8E41C8 \
  -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890'

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

https://mySampleEnv.live.ruscomtech.ru/api/v1/timeseries/ru.ruscomtech.builtin:app.actionspersession?includeData=true&relativeTime=hour&aggregationType=avg&entity=APPLICATION-85A7CC&entity=APPLICATION-8E41C8

Содержание ответа

{
  "timeseriesId": "ru.ruscomtech.builtin:app.actionspersession",
  "displayName": "Actions per session",
  "dimensions": [
    "APPLICATION"
  ],
  "unit": "PerMinute (count/min)",
  "detailedSource": "Web application",
  "types": [],
  "dataResult": {
    "dataPoints": {
      "APPLICATION-85A7CC": [
        [
          1534921560000,
          1.75
        ],
        [
          1534921620000,
          2
        ],
        [
          1534921680000,
          2
        ]
      ],
      "APPLICATION-8E41C8": [
        [
          1534921560000,
          4
        ],
        [
          1534921620000,
          7
        ],
        [
          1534921680000,
          4
        ]
      ]
    },
    "unit": "PerMinute (count/min)",
    "resolutionInMillisUTC": 60000,
    "aggregationType": "AVG",
    "entities": {
      "APPLICATION-85A7CC": "Permanent Docker",
      "APPLICATION-8E41C8": "easyTravel AMP"
    },
    "timeseriesId": "ru.ruscomtech.builtin:app.actionspersession"
  },
  "aggregationTypes": [
    "AVG"
  ],
  "filter": "BUILTIN"
}

Код ответа

200