Esta es una traducción de la página de documentación original en español. Ayúdanos a mejorarla.

12 Descubrimiento utilizando datos de Prometheus

Descripción general

Los datos proporcionados en formato de línea Prometheus se pueden utilizar para el descubrimiento de bajo nivel.

Consulte las comprobaciones de Prometheus para más detalles sobre cómo se implementa la consulta de datos de Prometheus en Zabbix.

Configuración

La regla de descubrimiento de bajo nivel debe crearse como métrica dependiente de la métrica principal HTTP que recopila datos de Prometheus.

Prometheus to JSON

In the discovery rule, go to the Preprocessing tab and select the Prometheus to JSON preprocessing option. Data in JSON format are needed for discovery and the Prometheus to JSON preprocessing option will return exactly that, with the following attributes:

  • metric name
  • metric value
  • help (if present)
  • type (if present)
  • labels (if present)
  • raw line

For example, querying wmi_logical_disk_free_bytes:

from these Prometheus lines:

# 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

will return:

[
           {
               "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"
           }
       ]
Mapeo de macros LLD

A continuación tiene que ir a la pestaña de macros LLD y hacer los siguientes mapeos:

{#VOLUME}=$.labels['volume']
       {#METRIC}=$['name']
       {#HELP}=$['help']
Prototipo de métrica

Es posible que desee crear un prototipo de métrica como este:

con opciones de preprocesamiento: