Pular para o conteúdo

PromQL Explainer · Observabilidade

PromQL Explainer: Entenda qualquer consulta PromQL.

Cole uma consulta PromQL e obtenha um desmembramento em linguagem simples de cada cláusula — seletores, ranges, rate, agregações e comparações — grátis, inteiramente no seu navegador, sem cadastro.

Roda no seu navegador — nada do que você cola sai desta página. Como comprovamos isso

Roda no seu navegadorSem cadastroGrátis e abertoAtualizado em 4 de set. de 2026

Playground do PromQL Explainer

Example
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.

A lacuna

PromQL se escreve uma vez e nunca mais se lê.

Um alerta de PromQL é fácil de escrever e difícil de reler. Seis meses depois — ou no pull request de um colega — uma linha comosum by (job) (rate(...[5m])) / sum by (job) (rate(...[5m])) > 0.05 exige esforço de verdade para decifrar: qual janela, quais rótulos, qual limite, e por que uma razão afinal?

O explainer transforma esse trabalho em um relance. Ele analisa a expressão e narra cada cláusula — o seletor e seus comparadores, o range, orate, o agrupamento sum by, e a comparação final — para que um revisor, um engenheiro de plantão ou qualquer um que tente entender a expressão de uma regra de alerta do Prometheus possa ler a intenção sem reconstruir a consulta na cabeça.

Novo na sintaxe? Dê uma olhada na sintaxe que decodificamos ou experimente o playground ao vivo acima.

O pipeline

Como funciona.

Quatro passos determinísticos rodam de ponta a ponta a cada toque em Explicar, todos dentro da aba do seu navegador, sempre.

  1. Analisa a consulta.

    Sua expressão PromQL é analisada em uma árvore de sintaxe — seletores, ranges, chamadas de função, agregações e operadores binários — no mesmo formato que o Prometheus lê.

  2. Nomeia cada cláusula.

    Cada nó é rotulado pelo seu papel: a métrica e seus comparadores de rótulos, qualquer vetor de range e offset, o rate ou a agregação que o envolve, e a comparação.

  3. Traduz para linguagem simples.

    Cada cláusula nomeada é transformada em uma frase curta e legível que descreve o que ela seleciona, calcula ou afirma, sem deixar jargão sem definição.

  4. Mostra o desmembramento.

    As cláusulas anotadas são costuradas em um único resumo em linguagem simples mais uma lista parte por parte, para que você leia a consulta de cima para baixo ou cláusula a cláusula.

A sintaxe

O que ele decodifica.

O explainer lê PromQL padrão. Se você já escreveu uma consulta de alerta ou de dashboard do Prometheus, estes exemplos vão parecer familiares — cole qualquer um deles noplayground para ver o desmembramento completo.

Uma razão de alerta

Um clássico alerta de taxa de erro: um comparador regex =~em status, um range5m, umrate, duas agregações sum by (job) divididas em uma razão, e um limite > 0.05. O explainer nomeia cada um.

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

Um quantil de latência

Uma consulta de latência p99:histogram_quantile sobre umsum by (le) dosrates de buckets. O explainer destaca o quantil 0.99, o agrupamento le que faz o histograma funcionar, e a janela de range.

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

Para a gramática formal, consulte osfundamentos de consulta e areferência de funções do Prometheus.

Uma nota sobre o escopo

O explainer descreve o que uma consulta significa, não o que ela retorna: ele nunca se conecta a um servidor Prometheuse não avalia nenhum dado. Ele cobre os padrões comuns de alertas e dashboards — seletores e comparadores, ranges e offsets,rate /increase, os operadores de agregação,histogram_quantile e companhia, e comparações binárias. Subconsultas profundamente aninhadas podem ser resumidas em vez de totalmente decompostas. Trate a saída como uma leitura fiel da expressão, não um substituto da documentação oficial.

FAQ

Suas perguntas, respondidas.

Toque em uma pergunta para expandir a resposta.

O PromQL Explainer é uma ferramenta gratuita, que roda no navegador, que pega uma consulta PromQL do Prometheus e a decompõe em uma explicação em linguagem simples. Ele percorre cada parte da expressão — o seletor de métrica e seus comparadores de rótulos, qualquer range ou offset, o rate ou a agregação que o envolve, e a comparação de limite no final — para que você possa ler o que uma consulta realmente faz sem analisá-la de cabeça.

Não. O explainer roda 100% no lado do cliente. Sua consulta é analisada e explicada dentro da aba do seu navegador: nada é enviado para um servidor, e não há conta nem cadastro. Você pode colar com segurança consultas que referenciam nomes internos de métricas ou rótulos.

O explainer cobre os padrões que você encontra com mais frequência em alertas e dashboards: seletores de vetores instantâneos e de range com comparadores de rótulos (=, !=, =~, !~), durações de range e offsets, rate / irate / increase, os operadores de agregação (sum, avg, max, min, count e companhia) com agrupamento by / without, funções comuns como histogram_quantile e clamp, e comparações binárias contra um limite. Subconsultas exóticas ou profundamente aninhadas podem ser resumidas em vez de totalmente decompostas.

O Prometheus mostra o resultado de uma consulta; o explainer mostra o significado dela. Ele não se conecta a um servidor Prometheus nem retorna dados de séries temporais: lê a própria expressão e descreve a intenção. Isso o torna útil para revisar a regra de alerta de um colega, aprender PromQL ou conferir a sanidade de uma consulta antes de publicá-la.

Sim. Como cada cláusula é nomeada e descrita, o explainer também funciona como apoio didático: cole um exemplo de um runbook ou dashboard e veja exatamente de qual seletor, range, agregação e comparação ele é construído. Combine-o com a documentação oficial de consultas do Prometheus para a gramática formal.

Não. É uma ferramenta independente e comunitária, e não é afiliada nem endossada pelo projeto Prometheus nem pela Cloud Native Computing Foundation. Prometheus é uma marca registrada da The Linux Foundation. A ferramenta modela a sintaxe do PromQL por familiaridade e usa o nome do fornecedor apenas para descrever o que ela explica.

rate() calcula a taxa média de aumento por segundo de um contador ao longo da janela de range — por exemplo, rate(http_requests_total[5m]) faz a média do aumento por segundo durante os cinco minutos completos. Ela suaviza os picos e é a escolha padrão para métricas de contador e regras de alerta. O explainer identifica rate() e nomeia a duração do range para que você leia a janela num relance.

rate() faz a média do aumento por segundo ao longo de todo o vetor de range, produzindo valores estáveis que se adequam a alertas e contadores de movimento lento. irate() usa apenas as duas últimas amostras da janela, o que o torna mais responsivo, porém mais ruidoso — melhor reservá-lo para gráficos de contadores de movimento rápido em que você quer ver picos curtos. O explainer rotula aquele que aparecer na sua consulta e descreve o seu comportamento.

Colchetes com uma duração definem um vetor de range — eles dizem ao PromQL para retornar todas as amostras de cada série correspondente naquela janela retroativa. [5m] significa os últimos cinco minutos de dados. Funções como rate(), increase() e avg_over_time() exigem um vetor de range como entrada, então os colchetes são o que faz essas funções funcionarem.

As chaves contêm uma lista separada por vírgulas de comparadores de rótulos que filtram quais séries temporais são selecionadas. O operador = corresponde a um valor exato, != o exclui, =~ corresponde por expressão regular e !~ exclui por expressão regular. Então {job="api", status!="200"} seleciona as séries do job api descartando qualquer uma com status HTTP 200. O explainer nomeia cada comparador e seu operador em linguagem simples.

Mais ferramentas de observabilidade gratuitas e privadas.

O PromQL Explainer faz parte do cluster de observabilidade do OpsCanopy— traduza consultas com oHelper LogQLPromQL, ou faça testes unitários das suas regras do Loki com oAlertLint. Cada um roda inteiramente no seu navegador e nunca toca em um servidor.

Começando com Kubernetes? Leia o guia de Kubernetes →

39 ferramentas gratuitas, todas capazes de funcionar offline — o opscanopy.com não exige cadastro e não envia nada.

Trabalha com Loki também? Combine isto com oAlertLint, ou explore odiretório completo de ferramentas.

Não é afiliado nem endossado pelo projeto Prometheus nem pelaCloud Native Computing Foundation.Prometheus é uma marca registrada daThe Linux Foundation.