Точка интеграции с Zabbix
Описание интеграции применимо к конфигурации, в которой сервер VictoriaMetrics развёрнут на одном узле.
Получение списка метрик
Получить текущий список активных метрик можно с помощь точки доступа API:
/vision/victoriametrics/prometheus/api/v1/label/__name__/values
Для получения доступа используйте аутентификацию BasicAuth. Учётная запись по умолчанию:
-
имя пользователя:
vision; -
пароль:
skala-r.
Извлечение значений
Существует несколько способов извлечения метрик и их текущих значений из Визиона в Zabbix.
С помощью федерации
Точка доступа API:
/vision/victoriametrics/federate?match[]=<MATCH>
Здесь <MATCH> — выражение PormQL для фильтрации метрик, например:
-
Все метрики:
{__name__=~".*"} -
utlz_mem_used— все метрики с названиемutlz_mem_used; -
{_pak_id="mbd2"}— все метрики ПАК с названиемmbd2.
Пример:
https://192.168.190.188/vision/victoriametrics/federate?match[]=utlz_mem_used
Метрики отдаются в виде строк следующего формата:
ИМЯ_МЕТРИКИ{ИМЯ_МЕТКИ_1="ЗНАЧЕНИЕ_МЕТКИ_1", ...} ЗНАЧЕНИЕ_МЕТРИКИ ОТМЕТКА_ВРЕМЕНИ
utlz_mem_used{job="utlz_exporter",instance="127.0.0.1:9092",_module_id="db-module",_node_id="mbd8-adb-segment1",_pak_id="pl-mbd8",_target_id="13",_target_type="NODE"} 1119604000 1719840495170
utlz_mem_used{job="utlz_exporter",instance="127.0.0.1:9092",_module_id="db-mbdp-module",_node_id="pl-mbd2-0",_pak_id="pl-mbd2",_target_id="37",_target_type="NODE"} 144613640000 1719840485772...
С помощью запроса
Точка доступа API:
/vision/victoriametrics/api/v1/query?query=<QUERY>
Здесь <QUERY> — запрос PromQL (аналогично выражению для <MATCH>) на получение метрики.
Пример:
https://192.168.190.188/vision/victoriametrics/api/v1/query?query=utlz_mem_used
Метрики отдаются в формате JSON.
{
"status": "success",
"data": {
"resultType": "vector",
"result": [
{
"metric": {
"__name__": "utlz_mem_used",
"_module_id": "db-mbdp-module",
"_node_id": "pl-mbd2-0",
"_pak_id": "pl-mbd2",
"_target_id": "37",
"_target_type": "NODE",
"instance": "127.0.0.1:9092",
"job": "utlz_exporter"
},
"value": [1719840527, "144613640000"]
},
{
"metric": {
"__name__": "utlz_mem_used",
"_module_id": "db-mbdp-module",
"_node_id": "pl-mbd2-1",
"_pak_id": "pl-mbd2",
"_target_id": "39",
"_target_type": "NODE",
"instance": "127.0.0.1:9092",
"job": "utlz_exporter"
},
"value": [1719840527, "144515996000"]
}
// ...
]
},
"stats": {
"seriesFetched": "13"
}
}
Метки
У метрик присутствуют следующие служебные метки:
-
_pak_id— идентификатор ПАК; -
_target_id— идентификатор объекта (задачи) мониторинга; -
_target_type— тип объекта (задачи) мониторинга.В зависимости от типа и особенностей объекта (задачи) мониторинга, метрика получает дополнительные служебные метки.
Возможные типы объектов:
-
COMM— коммутатор; -
NODE— узел; -
SERVICE— сервис; -
VM— виртуальная машина.
Дополнительные служебные метки:
-
_comm_id— идентификатор коммутатора ПАК; -
_module_id— идентификатор модуля ПАК; -
_node_id— идентификатор узла ПАК; -
_vm_id— идентификатор служебной виртуальной машины ПАК.
Также могут присутствовать и иные метки, которые позволяют фильтровать информацию или отвечают за хранение данных.
-