Saltar al contenido

PromQL Explainer · Observabilidad

Entiende cualquier consulta de PromQL.

Pega una consulta de PromQL y obtén un desglose en lenguaje claro de cada cláusula —selectores, rangos, rate, agregaciones y comparaciones— gratis, enteramente en tu navegador, sin registro.

Funciona en tu navegador Sin registro Gratis y abierto Actualizado el 28 jul 2026

Playground del PromQL Explainer

query.promql

Tip: press Esc to release focus.

Explanation

Load an example or paste your own PromQL query, then explain it to see a plain-English summary and a token-by-token breakdown here.

La brecha

PromQL se escribe una vez y no se vuelve a leer.

Una alerta de PromQL es fácil de escribir y difícil de releer. Seis meses después —o en el pull request de un compañero— una línea como sum by (job) (rate(...[5m])) / sum by (job) (rate(...[5m])) > 0.05 requiere un esfuerzo real para descifrarla: ¿qué ventana, qué etiquetas, qué umbral, y por qué una proporción siquiera?

El explainer convierte ese trabajo en un vistazo. Analiza la expresión y narra cada cláusula —el selector y sus emparejadores, el rango, el rate, la agrupación sum by, y la comparación final— para que un revisor, un ingeniero de guardia o cualquiera que intente entender la expresión de una regla de alerta de Prometheus pueda leer la intención sin reconstruir la consulta en su cabeza.

¿Nuevo en la sintaxis? Echa un vistazo a la sintaxis que decodificamos o prueba el playground en vivo de arriba.

El pipeline

Cómo funciona.

Cuatro pasos deterministas se ejecutan de principio a fin con cada pulsación de Explicar, todos dentro de la pestaña de tu navegador, siempre.

  1. Analiza la consulta.

    Tu expresión PromQL se analiza en un árbol de sintaxis —selectores, rangos, llamadas a funciones, agregaciones y operadores binarios— con la misma forma que lee Prometheus.

  2. Nombra cada cláusula.

    Cada nodo se etiqueta por su rol: la métrica y sus emparejadores de etiquetas, cualquier vector de rango y offset, el rate o la agregación que lo envuelve, y la comparación.

  3. Traduce a lenguaje claro.

    Cada cláusula nombrada se convierte en una frase breve y legible que describe lo que selecciona, calcula o afirma, sin dejar jerga sin definir.

  4. Muestra el desglose.

    Las cláusulas anotadas se unen en un único resumen en lenguaje claro más una lista parte por parte, para que puedas leer la consulta de arriba abajo o cláusula a cláusula.

La sintaxis

Qué decodifica.

El explainer lee PromQL estándar. Si alguna vez has escrito una consulta de alerta o de panel de Prometheus, estos ejemplos te resultarán familiares: pega cualquiera de ellos en el playground para ver el desglose completo.

Una proporción de alerta

Una alerta clásica de tasa de error: un emparejador de regex =~ sobre status, un rango 5m, un rate, dos agregaciones sum by (job) divididas en una proporción, y un umbral > 0.05. El explainer nombra cada uno.

error-rate.promql
sum by (job) (
  rate(http_requests_total{status=~"5.."}[5m])
)
/
sum by (job) (
  rate(http_requests_total[5m])
) > 0.05

Un cuantil de latencia

Una consulta de latencia p99: histogram_quantile sobre un sum by (le) de los rates de buckets. El explainer destaca el cuantil 0.99, la agrupación le que hace funcionar el histograma, y la ventana de rango.

p99-latency.promql
histogram_quantile(
  0.99,
  sum by (le) (
    rate(http_request_duration_seconds_bucket[5m])
  )
)

Para la gramática formal, consulta los fundamentos de consulta y la referencia de funciones de Prometheus.

Una nota sobre el alcance

El explainer describe lo que significa una consulta, no lo que devuelve: nunca se conecta a un servidor de Prometheus y no evalúa ningún dato. Cubre los patrones comunes de alertas y paneles —selectores y emparejadores, rangos y offsets, rate / increase, los operadores de agregación, histogram_quantile y compañía, y comparaciones binarias. Las subconsultas profundamente anidadas pueden resumirse en lugar de descomponerse por completo. Considera la salida como una lectura fiel de la expresión, no un sustituto de la documentación oficial.

FAQ

Tus preguntas, respondidas.

Toca una pregunta para desplegar la respuesta.

El PromQL Explainer es una herramienta gratuita, que funciona en el navegador, que toma una consulta PromQL de Prometheus y la descompone en una explicación en lenguaje claro. Recorre cada parte de la expresión —el selector de métrica y sus emparejadores de etiquetas, cualquier rango u offset, el rate o la agregación que lo envuelve, y la comparación de umbral al final— para que puedas leer lo que una consulta hace realmente sin analizarla mentalmente.

No. El explainer se ejecuta 100% en el lado del cliente. Tu consulta se analiza y se explica dentro de la pestaña de tu navegador: nada se sube a un servidor, y no hay cuenta ni registro. Puedes pegar con seguridad consultas que hagan referencia a nombres internos de métricas o etiquetas.

El explainer cubre los patrones que encuentras con más frecuencia en alertas y paneles: selectores de vectores instantáneos y de rango con emparejadores de etiquetas (=, !=, =~, !~), duraciones de rango y offsets, rate / irate / increase, los operadores de agregación (sum, avg, max, min, count y compañía) con agrupación by / without, funciones comunes como histogram_quantile y clamp, y comparaciones binarias contra un umbral. Las subconsultas exóticas o profundamente anidadas pueden resumirse en lugar de descomponerse por completo.

Prometheus te dice el resultado de una consulta; el explainer te dice su significado. No se conecta a un servidor de Prometheus ni devuelve datos de series temporales: lee la propia expresión y describe su intención. Eso lo hace útil para revisar la regla de alerta de un compañero, aprender PromQL o comprobar la cordura de una consulta antes de publicarla.

Sí. Como cada cláusula se nombra y describe, el explainer también sirve como apoyo didáctico: pega un ejemplo de un runbook o un panel y lee de qué selector, rango, agregación y comparación está construido exactamente. Combínalo con la documentación oficial de consultas de Prometheus para la gramática formal.

No. Es una herramienta independiente y comunitaria, y no está afiliada ni respaldada por el proyecto Prometheus ni por la Cloud Native Computing Foundation. Prometheus es una marca registrada de The Linux Foundation. La herramienta modela la sintaxis de PromQL por familiaridad y usa el nombre del proveedor solo para describir lo que explica.

rate() calcula la tasa media de incremento por segundo de un contador a lo largo de la ventana de rango; por ejemplo, rate(http_requests_total[5m]) promedia el incremento por segundo durante los cinco minutos completos. Suaviza los picos y es la opción estándar para métricas de contador y reglas de alerta. El explainer identifica rate() y nombra la duración del rango para que puedas leer la ventana de un vistazo.

rate() promedia el incremento por segundo a lo largo de todo el vector de rango, produciendo valores estables que se adaptan a las alertas y a los contadores de movimiento lento. irate() usa solo las dos últimas muestras de la ventana, lo que lo hace más reactivo pero más ruidoso: lo mejor es reservarlo para graficar contadores de movimiento rápido donde quieras ver picos breves. El explainer etiqueta el que aparezca en tu consulta y describe su comportamiento.

Los corchetes con una duración definen un vector de rango: le indican a PromQL que devuelva todas las muestras de cada serie coincidente durante esa ventana de retrospección. [5m] significa los últimos cinco minutos de datos. Funciones como rate(), increase() y avg_over_time() requieren un vector de rango como entrada, así que los corchetes son lo que hace que esas funciones funcionen.

Las llaves contienen una lista separada por comas de emparejadores de etiquetas que filtran qué series temporales se seleccionan. El operador = coincide con un valor exacto, != lo excluye, =~ coincide por expresión regular y !~ excluye por expresión regular. Así que {job="api", status!="200"} selecciona las series del job api descartando cualquiera con un estado HTTP 200. El explainer nombra cada emparejador y su operador en lenguaje claro.

Más herramientas de observabilidad gratuitas y privadas.

El PromQL Explainer forma parte del clúster de observabilidad de OpsCanopy — traduce consultas con el Helper LogQLPromQL, o haz pruebas unitarias de tus reglas de Loki con AlertLint. Cada uno se ejecuta enteramente en tu navegador y nunca toca un servidor.

¿Empiezas con Kubernetes?  Lee la guía de Kubernetes →

29 herramientas gratuitas, todas pueden funcionar sin conexión — opscanopy.com funciona sin registro y sin subir nada.

¿Trabajas también en Loki? Combínalo con AlertLint, o explora el directorio completo de herramientas.

No está afiliado ni respaldado por el proyecto Prometheus ni por la Cloud Native Computing Foundation. Prometheus es una marca registrada de The Linux Foundation.