Pular para o conteúdo

PromQL Explainer · Observabilidade

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 Sem cadastro Grátis e aberto Atualizado em 28 de jul. de 2026

Playground do 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.

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 como sum 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, o rate, 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 no playground para ver o desmembramento completo.

Uma razão de alerta

Um clássico alerta de taxa de erro: um comparador regex =~ em status, um range 5m, um rate, 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 um sum by (le) dos rates 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 os fundamentos de consulta e a referê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 Prometheus e 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 o Helper LogQLPromQL, ou faça testes unitários das suas regras do Loki com o AlertLint. Cada um roda inteiramente no seu navegador e nunca toca em um servidor.

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

29 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 o AlertLint, ou explore o diretório completo de ferramentas.

Não é afiliado nem endossado pelo projeto Prometheus nem pela Cloud Native Computing Foundation. Prometheus é uma marca registrada da The Linux Foundation.