Zabbix может запрашивать метрики, которые представлены в формате строк Prometheus.
Чтобы начать сбор данных Prometheus, необходимо выполнить два шага:
https://<хост_prometheus>/метрикиИмеется две опции предобработки Prometheus данных:
При условии, что у вас уже есть настроенный основной элемент данных HTTP, вам необходимо создать зависимый элемент данных, который будет использовать шаг Prometheus предобработки:

| Параметр | Описание | Примеры | 
|---|---|---|
| Шаблон | Чтобы задать требуемый шаблон данных вы можете использовать язык запросов, походий на Prometheus язык запросов (смотрите таблицу сравнения), e.g.: <имя метрики> - выбор по имени метрики {__имя__="<имя метрики>"} - выбор по имени метрики {__имя__=~"<рег. выражение>"} - выбор по имени метрики соответствующей регулярному выражению {<имя метки>="<значение метки>",...} - выбор по имени метки {<имя метки>=~"<рег. выражение>",...} - выбор по имени метки соответствующей регулярному выражению {__имя__=~".*"}==<значение> - выбор по значению метрики Или комбинация всего выше обозначенного: <имя метрики>{<имя метки1>="<значение метки1>",<имя метки2>=~"<рег. выражение>",...}==<значение> Значением метки может быть любая последовательность UTF-8 символов, но обратная косая черта, двойные кавычки и символы перевода строки необходимо экранировать следующим образом \\, \" и \n соответственно; другие символы не должны быть экранированы. | 
       wmi_os_physical_memory_free_bytes cpu_usage_system{cpu="cpu-total"} cpu_usage_system{cpu=~".*"} cpu_usage_system{cpu="cpu-total",host=~".*"} wmi_service_state{name="dhcp"}==1 wmi_os_timezone{timezone=~".*"}==1  | 
       
| Вывод | Задается имя метки (опционально). В этом случае возвращается значение, которое соответствует имени метки. Это поле доступно только для опции Prometheus шаблон.  | 
       
       |
Данные с Prometheus можно использовать для низкоуровневого обнаружения. В этом случае требуются данные в JSON формате и, как раз, в этом формате данных возвращает опция предобработки Prometheus в JSON.
Для получения более подробных сведений смотрите Обнаружение с использованием Prometheus данных.
Следующая таблица перечисляет различия и сходства между языками запросов PromQL и Zabbix Prometheus предобработкой.
| PromQL instant vector selector | Zabbix Prometheus предобработка | |
|---|---|---|
| Различия | ||
| Цель запроса | Prometheus сервер | Простой текст в формате толкования Prometheus | 
| Возвращает | Instant vector | Метрика или значение метки (Prometheus шаблон) Массив метрик для одного значения в JSON (Prometheus в JSON)  | 
       
| Операторы соответствия меткам | =, !=, =~, !~ | =, =~ | 
| Регулярные выражения используемые поиске соответствия в метках или именах метрик | RE2 | PCRE | 
| Операторы сравнения | Смотрите список | Для фильтрации значений поддерживается только == (равно) | 
| Сходства | ||
| Выбор по имени метрики, которое равно строке | <имя метрики> или {__имя__="<имя метрики>"} | <имя метрики> или {__имя__="<имя метрики>"} | 
| Выбор по имени метрики, которое соответствует регулярному выражению | {__имя__=~"<рег. выражение>"} | {__имя__=~"<рег. выражение>"} | 
| Выбор значения по <имени метки>, которое равно строке | {<имя метки>="<значение метки>",...} | {<имя метки>="<значение метки>",...} | 
| Выбор значения по <имени метки>, которое соответствует регулярному выражению | {<имя метки>=~"<рег. выражение>",...} | {<имя метки>=~"<рег. выражение>",...} | 
| Выбор по значению, которое равно строке | {__имя__=~".*"} == <значение> | {__имя__=~".*"} == <значение> |