Áú»¢¶Ä²© pot consultar les m¨¨triques exposades en format de l¨ªnia Prometheus.
Calen dues passes per comen?ar a recollir dades de Prometheus:
https://<prometheus host>/metrics
Hi ha dues opcions de preprocessament de les dades de Prometheus:
El processament massiu ¨¦s compatible amb els elements dependents. Per habilitar la mem¨°ria cau i la indexaci¨®, el preprocessament ±Ê²¹³Ù°ù¨® Prometheus ha d'¨¦sser la primera passa de preprocessament. Quan el ±Ê²¹³Ù°ù¨® Prometheus ¨¦s la primera passa de preprocessament, les dades de Prometheus analitzades s'emmagatzemen a la mem¨°ria cau i s'indexen mitjan?ant la primera condici¨® <etiqueta>==<valor>
a la passa de preprocessament del ±Ê²¹³Ù°ù¨® Prometheus. Aquesta mem¨°ria cau es reutilitza quan es processen altres elements dependents d'aquest lot. Per a un rendiment ¨°ptim, la primera etiqueta hauria d'¨¦sser la que tingui m¨¦s valors diferents.
Si s'ha de fer un altre preprocessament abans de la primera passa, s'hauria de moure a l'element principal o a un nou element dependent que s'empraria com a element principal per als elements dependents.
Si l'element principal HTTP ¨¦s configurat, heu de crear un element dependent que empri una passa de preprocessament de Prometheus:
Els par¨¤metres seg¨¹ents s¨®n espec¨ªfics de l'opci¨® de preprocessament ±Ê²¹³Ù°ù¨® Prometheus:
±Ê²¹°ù¨¤³¾±ð³Ù°ù±ð | ¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨® | Exemples |
---|---|---|
±Ê²¹³Ù°ù¨® | Per definir el model de dades requerit, podeu emprar un llenguatge de consulta similar al llenguatge de consulta de Prometheus (veieu la taula de comparaci¨®), per exemple: <metric nom>: seleccioneu pel nom de la m¨¨trica {__name__="<nom de la m¨¨trica>"}: seleccioneu pel nom de la m¨¨trica {__name_ _=~ "<regex>"}: seleccioneu pel nom de la m¨¨trica que coincideixi amb una expressi¨® regular {<tag name>="<value>",...}: seleccioneu pel nom de l'etiqueta { <nom de l'etiqueta>=~"<regex>",...}: seleccioneu el nom de l'etiqueta que coincideixi amb una expressi¨® regular {__name __=~".*" }==<valor>: seleccioneu per valor de m¨¨trica O una combinaci¨® de les anteriors: <nom de la m¨¨trica>{< tag de nom1>="<etiqueta de valor1>",?<name tag2>=~"<regex>",...}==<valor> L'etiqueta de valor pot ¨¦sser qualsevol seq¨¹¨¨ncia de car¨¤cters UTF-8, per¨° barra invertida, cometes dobles i els car¨¤cters de nova l¨ªnia s'han de fer escapar com a \\ , \" i \n respectivament; els altres car¨¤cters no s'han de fer escapar . |
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* |
Processat de resultats | Indiqueu si voleu retornar el valor, l'etiqueta o aplicar la funci¨® adequada (si el patr¨® coincideix amb diverses fileres i el resultat s'ha d'afegir): valor - retorna el valor de la m¨¨trica (error si coincideixen diverses files) etiqueta - retorna el valor de l'etiqueta especificat al camp Etiqueta (error si coincideixen diverses m¨¨triques) suma - retorna la suma de valors min - retorna el valor m¨ªnim max - retorna el valor m¨¤xim mitjana - retorna el valor mitj¨¤ count - retorna el nombre de valors Aquest camp ¨¦s nom¨¦s disponible per a l'opci¨® ±Ê²¹³Ù°ù¨® Prometheus. |
Veieu tamb¨¦ exemples d'¨²s de par¨¤metres a continuaci¨®. |
Sortida | Estableix el nom de l'etiqueta (opcional). En aquest cas, es retorna el valor corresponent al nom de l'etiqueta. Aquest camp nom¨¦s ¨¦s disponible per a l'opci¨® ±Ê²¹³Ù°ù¨® Prometheus, si es selecciona "Etiqueta" al camp Processat de resultats. |
Exemples d'¨²s de par¨¤metres
/var/db
de:
node_disk_usage_bytes{path="/var/cache"} 2.1766144e+09
node_disk_usage_bytes{path="/var/db"} 20480
node_disk_usage_bytes{path="/var/dpkg"} 8192
node_disk_usage_bytes{path="/var/empty"} 4096
empreu la configuraci¨® seg¨¹ent:
node_disk_usage_bytes{path="/var/db"}
node_disk_usage_bytes
:node_disk_usage_bytes
elasticsearch_cluster_health_status{cluster="elasticsearch",color="green"} 1
elasticsearch_cluster_health_status{cluster="elasticsearch",color="red"} 0
elasticsearch_cluster_health_status{cluster="elasticsearch",color="yellow"} 0
empreu la configuraci¨® seg¨¹ent:
elasticsearch_cluster_health_status {cluster="elasticsearch"} == 1
El filtre (basat en el valor num¨¨ric "1") coincidir¨¤ amb la filera adequada, mentre que l'etiqueta retornar¨¤ la descripci¨® de l'estat de salut (actualment "verd"; per¨° potencialment tamb¨¦ "vermell" o "groc").
Les dades de Prometheus es poden emprar per la descoberta de baix nivell. En aquest cas, calen dades en format JSON i l'opci¨® de preprocessat Prometheus to JSON retornar¨¤ exactament aix¨°.
Per obtindre m¨¦s informaci¨®, consulteu descoberta emprant informaci¨® Prometheus.
La taula seg¨¹ent llista les difer¨¨ncies i semblances entre el llenguatge de consulta de preprocessat PromQL i el Áú»¢¶Ä²© Prometheus.
Preprocessat de Áú»¢¶Ä²© Prometheus | ||
---|---|---|
¶Ù¾±´Ú±ð°ù¨¨²Ô³¦¾±±ð²õ | ||
Dest¨ª de la petici¨® | Servidor Prometheus | Text sense format en format d'exposici¨® de Prometheus |
Retorns | Vector d'instant¨¤nia | Valor de m¨¨trica o etiqueta (plantilla Prometheus) Matriu de m¨¨triques per a un valor ¨²nic en JSON (Prometheus a JSON) |
Etiqueta operadors de concordan?a | =, !=, =~, !~ | =, !=, = ~, !~ |
Expressi¨® regular emprada a la concordan?a de noms d'etiquetes o m¨¨triques | RE2 | PCRE |
Operadors de comparaci¨® | Veieu | ±·´Ç³¾¨¦²õ == (igual) ¨¦s compatible amb la c¨¤rrega de valor filtrada |
Semblances | ||
Trieu per nom m¨¨tric equival a cadena | <nom m¨¨tric> o {__nom__="<nom m¨¨tric>"} | <nom m¨¨tric> o {__nom__ ="<nom m¨¨tric> >>"} |
Trieu pel nom de m¨¨trica que coincideixi amb l'expressi¨® regular | {__name__=~"<regex>"} | {__name__=~"< regex>" } |
Trieu per <nom de l'etiqueta> el valor ¨¦s igual a la cadena | {<nom de l'etiqueta>="<valor de l'etiqueta>",...} | {<nom de l'etiqueta>= "<valor de l'etiqueta>", ...} |
Trieu el valor <nom de l'etiqueta> que coincideixi amb l'expressi¨® regular | {<nom de l'etiqueta>=~"<regex>",...} | {<etiqueta de nom>=~"<regex >",...} |
Trieu per valor ¨¦s igual a cadena | {__nom__=~".*"} == <valor> | {__nom__=~".* " } == <valor> |