Получение метрик
Список всех доступных показателей.
Вы можете ограничить вывод, используя нумерацию страниц:
- Укажите количество результатов на странице в параметре запроса pageSize .
- Затем используйте курсор из поля nextPageKey предыдущего ответа в параметре запроса nextPageKey для получения последующих страниц.
Запрос создает один из следующих типов полезной нагрузки, в зависимости от значения заголовка запроса Accept :
application/json
text/csv; header=present
— таблица CSV со строкой заголовкаtext/csv; header=absent
— таблица CSV без строки заголовка
Если с запросом не предоставлен заголовок Acceptapplication/json
, возвращается полезная нагрузка.
GET | Managed | https://{your-domain}/e/{your-environment-id}/api/v2/metrics
|
Cреда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/v2/metrics
|
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с областью действия Чтение метрик ( metrics.read
) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Параметры
Параметр | Тип | Описание | В | Необходимый |
---|---|---|---|---|
nextPageKey | string | Курсор для следующей страницы результатов. Вы можете найти его в поле nextPageKey предыдущего ответа.
Первая страница всегда возвращается, если вы не укажете параметр запроса nextPageKey . Когда nextPageKey настроен на получение последующих страниц, вы должны опустить все остальные параметры запроса. |
запрос | по желанию |
pageSize | integer | Количество метрических схем в полезной нагрузке одного ответа.
Максимально допустимый размер страницы – 500. Если не установлено, используется 100. Если используется значение выше 500, возвращается только 500 результатов на страницу. |
запрос | по желанию |
metricSelector | string | Выбирает метрики для запроса по их ключам.
Можно указать несколько ключей метрик, разделенных запятыми (например,
Вы можете установить дополнительные операторы преобразования, разделенные двоеточием ( Эта конечная точка поддерживает только преобразования , Если ключ метрики содержит какие-либо символы, ключ необходимо заключить в кавычки (
Например, чтобы запросить метрику с ключом ext:selfmonitoring.jmx.Agents: Введите «APACHE» , вы должны указать этот селектор:
Чтобы найти метрики на основе условия поиска, а не metricId, используйте текстовый параметр запроса вместо этого. |
запрос | по желанию |
text | string | Критерий поиска реестра метрик. Показывать только те метрики, которые содержат термин в своем ключе, отображаемом имени или описании. Используйте этот metricSelector параметр вместо этого, чтобы выбрать полную иерархию метрик вместо текстового поиска.
|
запрос | по желанию |
fields | string | Определяет список свойств метрик, включенных в ответ.
Чтобы добавить свойства, перечислите их с начальным плюсом Чтобы указать несколько свойств, соедините их запятой (например, Если указать только одно свойство, ответ будет содержать ключ метрики и указанное свойство. Чтобы вернуть только ключи метрик, укажите |
запрос | по желанию |
writtenSince | string | Фильтрует результирующий набор метрик до тех, которые имеют точки данных в пределах указанного периода времени.
Вы можете использовать один из следующих форматов:
|
запрос | по желанию |
metadataSelector | string | Область метаданных запроса. В ответ включаются только метрики с указанными свойствами.
Вы можете установить один или несколько из следующих критериев. Значения чувствительны к регистру и используется
Чтобы задать несколько критериев, разделите их запятой ( Например, чтобы вывести список метрик, у которых есть функция тегов feature AND cloud с единицей измерения Percent OR MegaByte AND измерение с измерением ключа location , используйте следующий metadataSelector : |
запрос | по желанию |
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
200 | MetricDescriptorCollection | Успех |
400 | Ошибка синтаксиса или проверки. metricSelector или поля содержат синтаксические или семантические ошибки. | |
404 | Метрика не найдена. | |
406 | Неприемлимо. Запрошенный тип носителя не поддерживается. Проверьте заголовок Accept вашего запроса. |
Объекты тела ответа
Объект MetricDescriptorCollection
Список метрик вместе с их дескрипторами.
Элемент | Тип | Описание |
---|---|---|
nextPageKey | string | Курсор для следующей страницы результатов. Имеет значение null на последней странице.
Используйте его в параметре запроса nextPageKey для получения последующих страниц результата. |
totalCount | integer | Предполагаемое количество метрик в результате. |
metrics | MetricDescriptor[] | Список метрик вместе с их дескрипторами |
warnings | string [] | Список возможных предупреждений о запросе. Например, использование устаревших функций и т. д. |
Объект MetricDescriptor
Дескриптор метрики.
Элемент | Тип | Описание |
---|---|---|
dimensionCardinalities | MetricDimensionCardinality[] | Количество элементов метрических измерений MINT. |
minimumValue | number | Минимально допустимое значение метрики.
Выражения показателей не возвращают это поле. |
maximumValue | number | Максимально допустимое значение метрики.
Выражения показателей не возвращают это поле. |
latency | integer | Задержка показателя в минутах.
Задержка — это ожидаемая задержка в отчетах (например, вызванная ограничениями поставщиков облачных услуг или других сторонних источников данных) между наблюдением за точкой данных метрики и ее доступностью в Ключ-АСТРОМ. Допустимый диапазон значений составляет от 1 до 60 минут. Выражения показателей не возвращают это поле. |
resolutionInfSupported | boolean | Если установлено значение «true», разрешение=Inf может быть применено к запросу метрики. |
unitDisplayFormat | string | Необработанное значение хранится в битах или байтах. Пользовательский интерфейс может отображать его в следующих системах счисления:
Двоичный: 1 МБ = 1024 КиБ = 1 048 576 байт. Десятичный: 1 МБ = 1000 КБ = 1 000 000 байт. Если не задано, используется десятичная система. Выражения показателей не возвращают это поле. Элемент может содержать эти значения
|
rootCauseRelevant | boolean | Метрика является ( true ) или не является ( false ) релевантной для основной причины.
Метрика, относящаяся к первопричине, представляет собой надежный индикатор неисправного компонента. Выражения показателей не возвращают это поле. |
dduBillable | boolean | Если true использование метрики потребляет единицы данных Дэвиса .
Выражения показателей не возвращают это поле. |
defaultAggregation | MetricDefaultAggregation | Агрегирование метрики по умолчанию. |
lastWritten | integer | Отметка времени последней записи метрики.
Имеет значение |
impactRelevant | boolean | Метрика является ( true ) или не является ( false ) релевантной для воздействия.
Метрика, имеющая отношение к влиянию, сильно зависит от других метрик и изменений, поскольку базовая метрика первопричины изменилась. Выражения показателей не возвращают это поле. |
dimensionDefinitions | MetricDimensionDefinition[] | Точное разделение метрик (например, группа процессов и идентификатор процесса для некоторой метрики, связанной с процессом).
Для загруженных показателей параметры, по которым не было данных за последние 15 дней, опускаются. |
metricValueType | MetricValueType | Тип значения для метрики. |
tags | string [] | Теги, примененные к метрике.
Выражения показателей не возвращают это поле. |
entityType | string [] | Список допустимых основных типов сущностей для этой метрики. Может использоваться для type предиката в entitySelector .
|
metricId | string | Полный ключ метрики.
Если использовалось преобразование, оно отражается в ключе метрики. |
metricSelector | string | Селектор метрик, который используется при запросе метрики func:. |
scalar | boolean | Указывает, разрешается ли метрическое выражение в скаляр ( true ) или в ряд ( false ). Скалярный результат всегда содержит одну точку данных. Количество точек данных в результате серии зависит от используемого разрешения.
|
aggregationTypes | string [] | Список разрешенных агрегаций для этой метрики.
Элемент может содержать эти значения
|
displayName | string | Имя метрики в пользовательском интерфейсе. |
description | string | Краткое описание метрики. |
transformations | string [] | Операторы преобразования, которые можно добавить к текущему списку преобразований.
Элемент может содержать эти значения
|
unit | string | Единица измерения. |
warnings | string[] | Список потенциальных предупреждений, влияющих на этот идентификатор. Например, использование устаревших функций и т. д. |
created | integer | Отметка времени создания метрики.
Встроенные метрики и выражения метрик имеют значение |
Объект MetricDimensionCardinality
Количество элементов измерения метрики.
Элемент | Тип | Описание |
---|---|---|
relative | number | Относительная кардинальность измерения, выраженная в процентах |
estimate | integer | Оценка количества элементов измерения. |
key | string | Ключ измерения.
Он должен быть уникальным в пределах метрики. |
Объект MetricDefaultAggregation
Агрегирование метрики по умолчанию.
Элемент | Тип | Описание |
---|---|---|
parameter | number | Доставляемый процентиль. Допустимые значения находятся между 0 и 100 .
Применимо только к |
type | string | Тип агрегации по умолчанию.
Элемент может содержать эти значения
|
Объект MetricDimensionDefinition
Размерность метрики.
Элемент | Тип | Описание |
---|---|---|
displayName | string | Отображаемое имя измерения. |
name | string | Имя измерения. |
key | string | Ключ измерения.
Он должен быть уникальным в пределах метрики. |
type | string | Тип измерения.
Элемент может содержать эти значения
|
index | integer | Уникальный индекс измерения, начинающийся с 0.
Добавление преобразований, таких как :names или :parents, может изменить индексы измерений. |
Объект MetricValueType
Тип значения для метрики.
Элемент | Тип | Описание |
---|---|---|
type | string | Тип значения метрики
Элемент может содержать эти значения
|
JSON-модель тела ответа
{
"totalCount": 3,
"nextPageKey": "ABCDEFABCDEFABCDEF_",
"metrics": [
{
"metricId": "builtin:host.cpu.user:splitBy(\"dt.entity.host\"):max:fold",
"displayName": "CPU user",
"description": "Percentage of user-space CPU time currently utilized, per host.",
"unit": "Percent",
"dduBillable": false,
"created": 1597400123451,
"lastWritten": 1597400717783,
"entityType": [
"HOST"
],
"aggregationTypes": [
"auto",
"value"
],
"transformations": [
"filter",
"fold",
"limit",
"merge",
"names",
"parents",
"timeshift",
"rate",
"sort",
"last",
"splitBy"
],
"defaultAggregation": {
"type": "value"
},
"dimensionDefinitions": [
{
"key": "dt.entity.host",
"name": "Host",
"displayName": "Host",
"index": 0,
"type": "ENTITY"
}
],
"tags": [],
"metricValueType": {
"type": "unknown"
}
},
{
"metricId": "builtin:host.cpu.user:splitBy()",
"displayName": "CPU user",
"description": "Percentage of user-space CPU time currently utilized, per host.",
"unit": "Percent",
"dduBillable": false,
"created": 1597400123451,
"lastWritten": 1597400717783,
"entityType": [
"HOST"
],
"aggregationTypes": [
"auto",
"value"
],
"transformations": [
"filter",
"fold",
"limit",
"merge",
"names",
"parents",
"timeshift",
"rate",
"sort",
"last",
"splitBy"
],
"defaultAggregation": {
"type": "value"
},
"dimensionDefinitions": [
{
"key": "dt.entity.host",
"name": "Host",
"displayName": "Host",
"index": 0,
"type": "ENTITY"
}
],
"tags": [],
"metricValueType": {
"type": "unknown"
}
}
]
}
Пример
В этом примере запрос запрашивает все встроенные метрики ( для metricSelector установлено значение builtin:*
), доступные в среде mySampleEnv . В ответ включаются следующие поля:
- идентификатор метрики
- Ед. изм
- типы агрегации
Для этого для параметра запроса полейunit,aggregationTypes
установлено значение .
Маркер API передается в заголовке авторизации .
Ответ имеет application/json
формат и усекается до четырех записей.
Curl
curl -L -X GET 'https://mySampleEnv.live.ruscomtech.ru/api/v2/metrics?fields=unit,aggregationTypes&metricSelector=builtin:*' \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
-H 'Accept: application/json'
URL-адрес запроса
https://mySampleEnv.live.ruscomtech.ru/api/v2/metrics?fields=unit,aggregationTypes&metricSelector=builtin:*
Тело ответа
{
"totalCount": 1808,
"nextPageKey": "___a7acX3q0AAAAGAQAJYnVpbHRpbjoqAQA",
"metrics": [
{
"metricId": "builtin:host.cpu.idle",
"unit": "Percent",
"aggregationTypes": [
"auto",
"avg",
"max",
"min"
]
},
{
"metricId": "builtin:host.cpu.load",
"unit": "Ratio",
"aggregationTypes": [
"auto",
"avg",
"max",
"min"
]
},
{
"metricId": "builtin:service.errors.server.count",
"unit": "Count",
"aggregationTypes": [
"auto",
"value"
]
},
{
"metricId": "builtin:service.keyRequest.count.client",
"unit": "Count",
"aggregationTypes": [
"auto",
"value"
]
}
]
}
Таблица CSV со строкой заголовка выглядит следующим образом. Чтобы получить его, измените заголовок Accepttext/csv; header=present
на .
metricId,unit,aggregationTypes
builtin:host.cpu.idle,Percent,"[auto, avg, max, min]"
builtin:host.cpu.load,Ratio,"[auto, avg, max, min]"
builtin:service.errors.server.count,Count,"[auto, value]"
builtin:service.keyRequest.count.client,Count,"[auto, value]"
Код ответа
200