Данные, которые представлены в формате Prometheus строк можно использовать для низкоуровневого обнаружения.
Смотрите Prometheus проверки для получения более подробных сведений о том, как в Zabbix реализован запрос Prometheus данных.
Правило низкоуровневого обнаружения необходимо создать как зависимый элемент данных к основному элементу данных HTTP, который собирает данные Prometheus.
В правиле обнаружения перейдите на вкладку Предобработка и выберите опцию предобработки Prometheus в JSON. Для обнаружения потребуются данные в JSON формате и, как раз, в этом формате данных возвращает опция предобработки Prometheus в JSON, со следующими атрибутами:
Например, запрос wmi_logical_disk_free_bytes
:
со этих строк Prometheus:
# HELP wmi_logical_disk_free_bytes Free space in bytes (LogicalDisk.PercentFreeSpace)
# TYPE wmi_logical_disk_free_bytes gauge
wmi_logical_disk_free_bytes{volume="C:"} 3.5180249088e+11
wmi_logical_disk_free_bytes{volume="D:"} 2.627731456e+09
wmi_logical_disk_free_bytes{volume="HarddiskVolume4"} 4.59276288e+08
вернёт:
[
{
"name": "wmi_logical_disk_free_bytes",
"help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",
"type": "gauge",
"labels": {
"volume": "C:"
},
"value": "3.5180249088e+11",
"line_raw": "wmi_logical_disk_free_bytes{volume=\"C:\"} 3.5180249088e+11"
},
{
"name": "wmi_logical_disk_free_bytes",
"help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",
"type": "gauge",
"labels": {
"volume": "D:"
},
"value": "2.627731456e+09",
"line_raw": "wmi_logical_disk_free_bytes{volume=\"D:\"} 2.627731456e+09"
},
{
"name": "wmi_logical_disk_free_bytes",
"help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",
"type": "gauge",
"labels": {
"volume": "HarddiskVolume4"
},
"value": "4.59276288e+08",
"line_raw": "wmi_logical_disk_free_bytes{volume=\"HarddiskVolume4\"} 4.59276288e+08"
}
]
Следующим шагом вам необходимо перейти на вкладку LLD макросов и сделать следующую карту соответствий:
Вы можете создать прототип элементов данных следующим образом:
с опциями предобработки: