Отчёт о метрике пользовательского устройства: различия между версиями
ENetrebin (обсуждение | вклад) |
ENetrebin (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
Конечная точка пользовательского устройства API топологии и Smartscape позволяет отправлять точку данных пользовательской метрики на пользовательское устройство в | Конечная точка пользовательского устройства API топологии и Smartscape позволяет отправлять точку данных пользовательской метрики на пользовательское устройство в Dynatrace. Этот запрос также может обновлять метаданные пользовательского устройства. | ||
Метрика, о которой вы сообщаете, уже должна существовать в | Метрика, о которой вы сообщаете, уже должна существовать в Dynatrace. | ||
Чтобы узнать, как создать пользовательскую метрику, см. статью Timeseries API v1 — ВСТАВКА пользовательской метрики . | Чтобы узнать, как создать пользовательскую метрику, см. статью Timeseries API v1 — ВСТАВКА пользовательской метрики . | ||
См. раздел Создание пользовательского устройства с помощью | См. раздел Создание пользовательского устройства с помощью Dynatrace API , чтобы узнать, как создать пользовательское устройство без отправки на него данных. | ||
Вы можете отправлять данные на пользовательское устройство задним числом — конечная точка пользовательского устройства поддерживает отчеты о данных до одного часа назад. Однако для обеспечения надлежащего функционирования анализа первопричин ИИ и оповещения на основе метрик мы рекомендуем отправлять данные в режиме реального времени. | Вы можете отправлять данные на пользовательское устройство задним числом — конечная точка пользовательского устройства поддерживает отчеты о данных до одного часа назад. Однако для обеспечения надлежащего функционирования анализа первопричин ИИ и оповещения на основе метрик мы рекомендуем отправлять данные в режиме реального времени. | ||
Строка 38: | Строка 38: | ||
Если вы используете идентификатор существующего устройства, соответствующие параметры будут обновлены. | Если вы используете идентификатор существующего устройства, соответствующие параметры будут обновлены. | ||
Не используйте здесь идентификатор объекта | Не используйте здесь идентификатор объекта Dynatrace. | ||
|path | |path | ||
|требуется | |требуется | ||
Строка 70: | Строка 70: | ||
Идентификатор группы помогает сохранить непротиворечивую картину отношений между группами устройств. Одним из многих случаев, когда важна правильная группа, является обнаружение службы: вы можете определить, какие пользовательские устройства должны вести к одной и той же службе, определив для них одинаковый идентификатор группы. | Идентификатор группы помогает сохранить непротиворечивую картину отношений между группами устройств. Одним из многих случаев, когда важна правильная группа, является обнаружение службы: вы можете определить, какие пользовательские устройства должны вести к одной и той же службе, определив для них одинаковый идентификатор группы. | ||
Если вы установите идентификатор группы, он будет хэширован в идентификатор объекта | Если вы установите идентификатор группы, он будет хэширован в идентификатор объекта Dynatrace пользовательского устройства. В этом случае пользовательское устройство может быть частью только одной пользовательской группы устройств. | ||
Если вы не укажете идентификатор группы, | Если вы не укажете идентификатор группы, Dynatrace создаст ее на основе идентификатора или типа пользовательского устройства. Кроме того, группа не будет хеширована в идентификатор устройства, что означает, что устройство может переключаться между группами. | ||
|по желанию | |по желанию | ||
|- | |- | ||
Строка 136: | Строка 136: | ||
|Список значений метрик, о которых сообщается для пользовательского устройства. | |Список значений метрик, о которых сообщается для пользовательского устройства. | ||
Метрика, о которой вы сообщаете, уже должна существовать в | Метрика, о которой вы сообщаете, уже должна существовать в Dynatrace. Чтобы узнать, как создать пользовательскую метрику, см. статью Timeseries API v1 — ВСТАВКА пользовательской метрики . | ||
Dynatrace объединяет все значения, которые вы сообщаете для пользовательского устройства. | |||
Если вы отправите значение (включая пустое значение), оно будет добавлено к набору существующих значений. | Если вы отправите значение (включая пустое значение), оно будет добавлено к набору существующих значений. | ||
Строка 203: | Строка 203: | ||
], | ], | ||
"favicon": "<nowiki>https://www.freefavicon.com/freefavicons/food/cup-of-coffee-152-78475.png</nowiki>", | "favicon": "<nowiki>https://www.freefavicon.com/freefavicons/food/cup-of-coffee-152-78475.png</nowiki>", | ||
"configUrl": "<nowiki>http://coffee-machine. | "configUrl": "<nowiki>http://coffee-machine.dynatrace.internal.com/coffeemachine/manage</nowiki>", | ||
"type": "coffee machine", | "type": "coffee machine", | ||
"properties": {}, | "properties": {}, | ||
Строка 224: | Строка 224: | ||
], | ], | ||
"hostNames": [ | "hostNames": [ | ||
"coffee-machine. | "coffee-machine.dynatrace.internal.com" | ||
] | ] | ||
}</code> | }</code> | ||
Строка 247: | Строка 247: | ||
=== Объекты тела ответа === | === Объекты тела ответа === | ||
==== Объект | ==== Объект <code>CustomDevicePushResult</code> ==== | ||
Результат пользовательского push-запроса устройства. Идентификатор объекта рассчитывается автоматически. | Результат пользовательского push-запроса устройства. Идентификатор объекта рассчитывается автоматически. | ||
{| class="wikitable" | {| class="wikitable" | ||
Строка 256: | Строка 256: | ||
|entityId | |entityId | ||
|string | |string | ||
|Идентификатор объекта | |Идентификатор объекта Dynatrace пользовательского устройства. | ||
|- | |- | ||
|groupId | |groupId | ||
|string | |string | ||
|Идентификатор объекта | |Идентификатор объекта Dynatrace пользовательской группы устройств. | ||
|} | |} | ||
Строка 282: | Строка 282: | ||
==== Curl ==== | ==== Curl ==== | ||
<code>curl -X POST \ | <code>curl -X POST \ | ||
<nowiki>https://mySampleEnv.live. | <nowiki>https://mySampleEnv.live.dynatrace.com/api/v1/entity/infrastructure/custom/idOfmyCustomDevice</nowiki> \ | ||
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \ | -H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \ | ||
-H 'Content-Type: application/json' \ | -H 'Content-Type: application/json' \ | ||
Строка 290: | Строка 290: | ||
], | ], | ||
"type": "F5-Firewall", | "type": "F5-Firewall", | ||
"properties" : { | "properties"p: { | ||
"Sample Property 2": "Sample value 2" | "Sample Property 2": "Sample value 2" | ||
}, | }, | ||
"series" : [ | "series" : [ | ||
{ | { | ||
"timeseriesId" : "custom:firewall.connections.dropped", | "timeseriesId"t: "custom:firewall.connections.dropped", | ||
"dimensions" : { | "dimensions" : { | ||
"nic" : "ethernetcard1" | "nic" | ||
: "ethernetcard1" | |||
}, | }, | ||
"dataPoints" : [ | "dataPoints" : [ | ||
Строка 305: | Строка 306: | ||
}, | }, | ||
{ | { | ||
"timeseriesId" : "custom:firewall.connections.dropped", | "timeseriesId"{: "custom:firewall.connections.dropped", | ||
"dimensions" : { | "dimensions"e: { | ||
"nic" : "ethernetcard2" | "nic"s: "ethernetcard2" | ||
}, | }, | ||
"dataPoints" : [ | "dataPoints" : [ | ||
Строка 318: | Строка 319: | ||
==== URL-адрес запроса ==== | ==== URL-адрес запроса ==== | ||
<code><nowiki>https://mySampleEnv.live. | <code><nowiki>https://mySampleEnv.live.dynatrace.com/api/v1/entity/infrastructure/custom/idOfmyCustomDevice</nowiki></code> | ||
==== Тело запроса ==== | ==== Тело запроса ==== |
Текущая версия на 14:39, 3 февраля 2023
Конечная точка пользовательского устройства API топологии и Smartscape позволяет отправлять точку данных пользовательской метрики на пользовательское устройство в Dynatrace. Этот запрос также может обновлять метаданные пользовательского устройства.
Метрика, о которой вы сообщаете, уже должна существовать в Dynatrace.
Чтобы узнать, как создать пользовательскую метрику, см. статью Timeseries API v1 — ВСТАВКА пользовательской метрики .
См. раздел Создание пользовательского устройства с помощью Dynatrace API , чтобы узнать, как создать пользовательское устройство без отправки на него данных.
Вы можете отправлять данные на пользовательское устройство задним числом — конечная точка пользовательского устройства поддерживает отчеты о данных до одного часа назад. Однако для обеспечения надлежащего функционирования анализа первопричин ИИ и оповещения на основе метрик мы рекомендуем отправлять данные в режиме реального времени.
Для этого варианта использования требуется элемент серии тела запроса .
Запрос потребляет и создает application/json
полезную нагрузку.
POST | Managed | https://{your-domain}/e/{your-environment-id}/api/v1/entity/infrastructure/custom/{customDeviceId}
|
Cреда АктивногоШлюза | https://{your-activegate-domain}/e/{your-environment-id}/api/v1/entity/infrastructure/custom/{customDeviceId}
|
Аутентификация
Чтобы выполнить этот запрос, вам нужен токен доступа с проблемой доступа и каналом событий, метриками и областью топологии ( DataExport
) . Чтобы узнать, как его получить и использовать, см. раздел Токены и аутентификация .
Параметры
Параметр | Тип | Описание | In | Необходимость |
---|---|---|---|---|
customDeviceId | string | Идентификатор пользовательского устройства.
Если вы используете идентификатор существующего устройства, соответствующие параметры будут обновлены. Не используйте здесь идентификатор объекта Dynatrace. |
path | требуется |
body | CustomDevicePushMessage | Тело JSON запроса. Содержит параметры пользовательского устройства. | body | по желанию |
Объекты тела запроса
Объект CustomDevicePushMessage
Конфигурация пользовательского устройства.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
displayName | string | Имя пользовательского устройства, которое будет отображаться в пользовательском интерфейсе. | по желанию |
group | string | Определяемый пользователем идентификатор группы объекта.
Идентификатор группы помогает сохранить непротиворечивую картину отношений между группами устройств. Одним из многих случаев, когда важна правильная группа, является обнаружение службы: вы можете определить, какие пользовательские устройства должны вести к одной и той же службе, определив для них одинаковый идентификатор группы. Если вы установите идентификатор группы, он будет хэширован в идентификатор объекта Dynatrace пользовательского устройства. В этом случае пользовательское устройство может быть частью только одной пользовательской группы устройств. Если вы не укажете идентификатор группы, Dynatrace создаст ее на основе идентификатора или типа пользовательского устройства. Кроме того, группа не будет хеширована в идентификатор устройства, что означает, что устройство может переключаться между группами. |
по желанию |
ipAddresses | string [] | Список IP-адресов, принадлежащих пользовательскому устройству.
Эти адреса используются для автоматического обнаружения горизонтальных коммуникационных отношений между этим компонентом и всеми другими наблюдаемыми компонентами в Smartscape. Как только соединение обнаружено, оно автоматически отображается и отображается в Smartscape. Если вы отправите значение (включая пустое значение), существующие значения будут перезаписаны. Если вы отправите |
по желанию |
listenPorts | integer [] | Список портов, которые прослушиваются пользовательскими устройствами.
Эти порты используются для обнаружения горизонтальных коммуникационных отношений между этим компонентом и всеми другими наблюдаемыми компонентами в Smartscape. Как только соединение обнаружено, оно автоматически отображается и отображается в Smartscape. Если порты указаны, вы также должны добавить по крайней мере один IP-адрес или имя хоста для пользовательского устройства. Если вы отправите значение, существующие значения будут перезаписаны. Если вы отправите |
по желанию |
type | string | Определение типа технологии пользовательского устройства.
Это должен быть тот же тип технологии, что и показатель, о котором вы сообщаете. Если вы отправите значение, существующее значение будет перезаписано. Если вы отправите |
по желанию |
favicon | string | Значок, который будет отображаться для вашего пользовательского компонента в Smartscape. Укажите полный URL-адрес файла значка. | по желанию |
configUrl | string | URL-адрес веб-страницы конфигурации пользовательского устройства, например страницы входа в брандмауэр или маршрутизатор. | по желанию |
properties | object | Список свойств пары "ключ-значение", которые будут отображаться под инфографикой вашего пользовательского устройства. | по желанию |
tags | string [] | Список пользовательских тегов, которые вы хотите прикрепить к своему пользовательскому устройству. | по желанию |
series | EntityTimeseriesData[] | Список значений метрик, о которых сообщается для пользовательского устройства.
Метрика, о которой вы сообщаете, уже должна существовать в Dynatrace. Чтобы узнать, как создать пользовательскую метрику, см. статью Timeseries API v1 — ВСТАВКА пользовательской метрики . Dynatrace объединяет все значения, которые вы сообщаете для пользовательского устройства. Если вы отправите значение (включая пустое значение), оно будет добавлено к набору существующих значений. Если вы отправите |
по желанию |
hostNames | string [] | Список имен хостов, связанных с пользовательским устройством.
Эти имена используются для автоматического обнаружения горизонтальных коммуникационных отношений между этим компонентом и всеми другими наблюдаемыми компонентами в Smartscape. Как только соединение обнаружено, оно автоматически отображается и отображается в Smartscape. Если вы отправите значение, существующие значения будут перезаписаны. Если вы отправляете |
по желанию |
Объект EntityTimeseriesData
Информация о метрике и ее точках данных.
Элемент | Тип | Описание | Необходимость |
---|---|---|---|
timeseriesId | string | Идентификатор метрики, в которую вы хотите опубликовать точки данных. | требуется |
dimensions | object | Размеры точек данных, которые вы публикуете.
Ключ измерения метрики должен быть определен ранее в определении метрики. |
по желанию |
dataPoints | array[] | Список точек данных.
Каждая точка данных представляет собой массив, содержащий метку времени и значение. Отметка времени — это миллисекунды UTC, представленные в виде числа, например: У вас есть гарантированный таймфрейм на 30 минут в прошлое. Пользовательская метрика должна быть зарегистрирована , прежде чем вы сможете сообщить о значении метрики. Поэтому отметка времени для сообщения о значении должна быть после времени регистрации метрики. |
требуется |
JSON-модель тела запроса
Это модель тела запроса, показывающая возможные элементы. Его необходимо настроить для использования в реальном запросе.
{
"displayName": "coffeeMachine",
"group": "myCustomDeviceGroup",
"ipAddresses": [
"10.0.0.1"
],
"listenPorts": [
80
],
"favicon": "https://www.freefavicon.com/freefavicons/food/cup-of-coffee-152-78475.png",
"configUrl": "http://coffee-machine.dynatrace.internal.com/coffeemachine/manage",
"type": "coffee machine",
"properties": {},
"tags": [
"office-linz"
],
"series": [
{
"timeseriesId": "custom:created.coffee.metric",
"dimensions": {
"office": "Linz"
},
"dataPoints": [
[
1521542929000,
13
]
]
}
],
"hostNames": [
"coffee-machine.dynatrace.internal.com"
]
}
Ответ
Коды ответов
Код | Тип | Описание |
---|---|---|
200 | CustomDevicePushResult | Успех. Пользовательское устройство создано или обновлено. |
400 | ErrorEnvelope | Не удалось. Ввод недействителен. |
Объекты тела ответа
Объект CustomDevicePushResult
Результат пользовательского push-запроса устройства. Идентификатор объекта рассчитывается автоматически.
Элемент | Тип | Описание |
---|---|---|
entityId | string | Идентификатор объекта Dynatrace пользовательского устройства. |
groupId | string | Идентификатор объекта Dynatrace пользовательской группы устройств. |
JSON-модель тела ответа
{
"entityId": "string",
"groupId": "string"
}
Пример
В этом примере запрос сообщает две точки данных custom:firewall.connections.dropped
для idOfmyCustomDevice
устройства. Точки данных (со значением 460
временной 1539860400000
метки и значением 456
временной 1539860460000
метки) принадлежат ethernetcard1
значению nic
измерения.
Запрос также сообщает еще две точки данных той же метрики, но ethernetcard2
в том же измерении, и обновляет метаданные устройства, добавляя свойство и тег.
Маркер API передается в заголовке авторизации .
Запрос возвращает идентификаторы пользовательского устройства (см. entityId
) и его группы (см. groupId
) в качестве подтверждения.
Вы можете скачать или скопировать образец тела запроса, чтобы попробовать его самостоятельно.
Curl
curl -X POST \
https://mySampleEnv.live.dynatrace.com/api/v1/entity/infrastructure/custom/idOfmyCustomDevice \
-H 'Authorization: Api-Token dt0c01.abc123.abcdefjhij1234567890' \
-H 'Content-Type: application/json' \
-d '{
"tags": [
"tag2"
],
"type": "F5-Firewall",
"properties"p: {
"Sample Property 2": "Sample value 2"
},
"series" : [
{
"timeseriesId"t: "custom:firewall.connections.dropped",
"dimensions" : {
"nic"
: "ethernetcard1"
},
"dataPoints" : [
[ 1539860400000, 460 ],
[ 1539860460000, 456 ]
]
},
{
"timeseriesId"{: "custom:firewall.connections.dropped",
"dimensions"e: {
"nic"s: "ethernetcard2"
},
"dataPoints" : [
[ 1539860430000, 439 ],
[ 1539860490000, 460 ]
]
}
]
}'
URL-адрес запроса
https://mySampleEnv.live.dynatrace.com/api/v1/entity/infrastructure/custom/idOfmyCustomDevice
Тело запроса
{
"tags": ["tag2"],
"type": "F5-Firewall",
"properties": {
"Sample Property 2": "Sample value 2"
},
"series": [
{
"timeseriesId": "custom:firewall.connections.dropped",
"dimensions": {
"nic": "ethernetcard1"
},
"dataPoints": [
[1539860400000, 460],
[1539860460000, 456]
]
},
{
"timeseriesId": "custom:firewall.connections.dropped",
"dimensions": {
"nic": "ethernetcard2"
},
"dataPoints": [
[1539860430000, 439],
[1539860490000, 460]
]
}
]
}
Тело ответа
{
"entityId": "CUSTOM_DEVICE-6A567B33AADC306E",
"groupId": "CUSTOM_DEVICE_GROUP-FC2E2ABF54F513D8"
}
Код ответа
200