Выбор нескольких метрик: различия между версиями
Материал из Dynatrace
ENetrebin (обсуждение | вклад) (Новая страница: «Конечная точка метрик GET предоставляет вам возможность запрашивать несколько метрик, а...») |
ENetrebin (обсуждение | вклад) |
||
(не показаны 3 промежуточные версии этого же участника) | |||
Строка 9: | Строка 9: | ||
Для каждого мы будем запрашивать полные дескрипторы: | Для каждого мы будем запрашивать полные дескрипторы: | ||
* | * Ключ метрики | ||
* Показать имя | * Показать имя | ||
* Описание | * Описание | ||
Строка 17: | Строка 17: | ||
* Агрегация по умолчанию | * Агрегация по умолчанию | ||
* Поддерживаемые преобразования | * Поддерживаемые преобразования | ||
* | * Параметры | ||
== Настроить запрос == | == Настроить запрос == | ||
Строка 30: | Строка 30: | ||
* Таблица CSV: установите для заголовка Accept<code>text/csv; header=present</code> запроса значение . Если вас не интересует строка заголовка, используйте <code>text/csv; header=absent</code>. | * Таблица CSV: установите для заголовка Accept<code>text/csv; header=present</code> запроса значение . Если вас не интересует строка заголовка, используйте <code>text/csv; header=absent</code>. | ||
Чтобы аутентифицировать запрос, установите для заголовка Authorization<code>Api-token {your-token}</code> запроса значение . Токен должен иметь разрешение на чтение метрик ( | Чтобы аутентифицировать запрос, установите для заголовка Authorization<code>Api-token {your-token}</code> запроса значение . Токен должен иметь разрешение на чтение метрик (<code>metrics.read</code>) | ||
== | == Curl == | ||
Вот Curl-код запроса. Обязательно используйте URL-адрес вашей собственной среды и настоящий токен API. | Вот Curl-код запроса. Обязательно используйте URL-адрес вашей собственной среды и настоящий токен API. | ||
Текущая версия на 15:44, 2 февраля 2023
Конечная точка метрик GET предоставляет вам возможность запрашивать несколько метрик, а также частичные или даже полные дескрипторы метрик.
В этом примере показано, как получить дескрипторы нескольких метрик одного родителя:
- Процессор простаивает (
builtin:host.cpu.idle
) - Загрузка системы (
builtin:host.cpu.load
) - Использование ЦП % (
builtin:host.cpu.usage
)
Для каждого мы будем запрашивать полные дескрипторы:
- Ключ метрики
- Показать имя
- Описание
- Единицы
- Поддерживаемые типы объектов
- Поддерживаемые агрегаты
- Агрегация по умолчанию
- Поддерживаемые преобразования
- Параметры
Настроить запрос
Мы должны установить следующие параметры запроса:
- метрикаСелектор к
builtin:host.cpu.(idle,usage,load)
- поля до
displayName,description,unit,entityType,aggregationTypes,transformations,defaultAggregation,dimensionDefinitions
. Обратите внимание, чтоmetricId
здесь это опущено, потому что оно всегда присутствует в ответе.
Вы можете получить ответ в двух форматах:
- JSON: установите для заголовка Accept
application/json
запроса значение . - Таблица CSV: установите для заголовка Accept
text/csv; header=present
запроса значение . Если вас не интересует строка заголовка, используйтеtext/csv; header=absent
.
Чтобы аутентифицировать запрос, установите для заголовка AuthorizationApi-token {your-token}
запроса значение . Токен должен иметь разрешение на чтение метрик (metrics.read
)
Curl
Вот Curl-код запроса. Обязательно используйте URL-адрес вашей собственной среды и настоящий токен API.
Полезная нагрузка JSON
curl -L -X GET 'https://mySampleEnv.live.dynatrace.com/api/v2/metrics?fields=displayName,description,unit,entityType,aggregationTypes,transformations,defaultAggregation,dimensionDefinitions&metricSelector=builtin:host.cpu.(idle,usage,load)' \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
-H 'Accept: application/json'
Полезная нагрузка таблицы CSV
curl -L -X GET 'https://mySampleEnv.live.dynatrace.com/api/v2/metrics?fields=displayName,description,unit,entityType,aggregationTypes,transformations,defaultAggregation,dimensionDefinitions&metricSelector=builtin:host.cpu.(idle,usage,load)' \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
-H 'Accept: text/csv; header=present'
URL-адрес запроса
https://mySampleEnv.live.dynatrace.com/api/v2/metrics?fields=displayName,description,unit,entityType,aggregationTypes,transformations,defaultAggregation,dimensionDefinitions&metricSelector=builtin:host.cpu.(idle,usage,load)
Ответ
Оба примера содержат полную полезную нагрузку, ничего не усекается.
Полезная нагрузка JSON
{
"totalCount": 3,
"nextPageKey": null,
"metrics": [
{
"metricId": "builtin:host.cpu.idle",
"displayName": "CPU idle",
"description": "",
"unit": "Percent",
"entityType": [
"HOST"
],
"aggregationTypes": [
"auto",
"avg",
"max",
"min"
],
"transformations": [
"filter",
"fold",
"merge",
"names",
"parents"
],
"defaultAggregation": {
"type": "avg"
},
"dimensionDefinitions": [
{
"key": "dt.entity.host",
"name": "Host",
"index": 0,
"type": "ENTITY"
}
]
},
{
"metricId": "builtin:host.cpu.load",
"displayName": "System load",
"description": "",
"unit": "Ratio",
"entityType": [
"HOST"
],
"aggregationTypes": [
"auto",
"avg",
"max",
"min"
],
"transformations": [
"filter",
"fold",
"merge",
"names",
"parents"
],
"defaultAggregation": {
"type": "avg"
},
"dimensionDefinitions": [
{
"key": "dt.entity.host",
"name": "Host",
"index": 0,
"type": "ENTITY"
}
]
},
{
"metricId": "builtin:host.cpu.usage",
"displayName": "CPU usage %",
"description": "Percentage of CPU time currently utilized.",
"unit": "Percent",
"entityType": [
"HOST"
],
"aggregationTypes": [
"auto",
"avg",
"max",
"min"
],
"transformations": [
"filter",
"fold",
"merge",
"names",
"parents"
],
"defaultAggregation": {
"type": "avg"
},
"dimensionDefinitions": [
{
"key": "dt.entity.host",
"name": "Host",
"index": 0,
"type": "ENTITY"
}
]
}
]
}
Полезная нагрузка таблицы CSV
metricId,displayName,description,unit,entityType,aggregationTypes,transformations,defaultAggregation,dimensionDefinitions
builtin:host.cpu.idle,CPU idle,,Percent,[HOST],"[auto, avg, max, min]","[filter, fold, merge, names, parents]",avg,[Host:ENTITY]
builtin:host.cpu.load,System load,,Ratio,[HOST],"[auto, avg, max, min]","[filter, fold, merge, names, parents]",avg,[Host:ENTITY]
builtin:host.cpu.usage,CPU usage %,Percentage of CPU time currently utilized.,Percent,[HOST],"[auto, avg, max, m