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.

Prometeo a JSON

En la regla de descubrimiento, vaya a la pestaña Preprocesamiento y seleccione la opción Opción de preprocesamiento Prometheus a JSON. Los datos en formato JSON son necesario para el descubrimiento y la opción de preprocesamiento Prometheus a JSON devolverá exactamente eso, con los siguientes atributos:

  • nombre de la métrica
  • valor métrico
  • ayuda (si está presente)
  • tipo (si está presente)
  • etiquetas (si están presentes)
  • línea cruda

Por ejemplo, consultando wmi_logic_disk_free_bytes:

de estas líneas de Prometeo:

# AYUDA wmi_logic_disk_free_bytes Espacio libre en bytes (LogicalDisk.PercentFreeSpace)
       # TIPO calibre wmi_logic_disk_free_bytes
       wmi_logic_disk_free_bytes{volume="C:"} 3.5180249088e+11
       wmi_logic_disk_free_bytes{volume="D:"} 2.627731456e+09
       wmi_logic_disk_free_bytes{volume="HarddiskVolume4"} 4.59276288e+08

volverá:

[
           {
               "nombre": "wmi_logic_disk_free_bytes",
               "help": "Espacio libre en bytes (LogicalDisk.PercentFreeSpace)",
               "tipo": "calibre",
               "etiquetas": {
                   "volumen": "C:"
                },
               "valor": "3.5180249088e+11",
               "line_raw": "wmi_logic_disk_free_bytes{volumen=\"C:\"} 3.5180249088e+11"
           },
           {
               "nombre": "wmi_logic_disk_free_bytes",
               "help": "Espacio libre en bytes (LogicalDisk.PercentFreeSpace)",
               "tipo": "calibre",
               "etiquetas": {
                   "volumen": "D:"
                },
               "valor": "2.627731456e+09",
               "line_raw": "wmi_logic_disk_free_bytes{volumen=\"D:\"} 2.627731456e+09"
           },
           {
               "nombre": "wmi_logic_disk_free_bytes",
               "help": "Espacio libre en bytes (LogicalDisk.PercentFreeSpace)",
               "tipo": "calibre",
               "etiquetas": {
                   "volumen": "VolumenDiscoHard4"
                },
               "valor": "4.59276288e+08",
               "line_raw": "wmi_logic_disk_free_bytes{volumen=\"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: