Skip to main content
Avalia uma consulta do Prometheus usando dados de uma tabela TimeSeries em um intervalo de momentos de avaliação.

Sintaxe

Argumentos

  • db_name - O nome do banco de dados em que uma tabela TimeSeries está localizada.
  • time_series_table - O nome de uma tabela TimeSeries.
  • promql_query - Uma consulta escrita em sintaxe PromQL.
  • start_time - O horário de início do intervalo de avaliação, com precisão de milissegundos ou maior.
  • end_time - O horário de término do intervalo de avaliação, com precisão de milissegundos ou maior.
  • step - O passo usado para percorrer o tempo de avaliação de start_time até end_time (inclusive).

Valor retornado

As colunas retornadas pela função dependem do tipo de resultado da consulta passada ao parâmetro promql_query: Os valores são sempre Float64, independentemente do tipo dos valores na tabela TimeSeries. A escala S dos timestamps é a mesma dos timestamps da tabela, mas nunca inferior a 3 (milissegundos). O fuso horário TZ é o de start_time e end_time se ambos forem do tipo DateTime ou DateTime64 e tiverem o mesmo fuso horário; caso contrário, é o fuso horário dos timestamps da tabela. A coluna samples recebe o nome time_series se a tabela TimeSeries estiver na versão 2 ou anterior.

Funcionalidades do PromQL compatíveis

Seletores

Seletores instantâneos, seletores de intervalo, correspondências de labels (=, !=, =~, !~), modificadores de offset, modificadores @ de timestamp e subconsultas.

Funções

Nota: histogram_quantile usa interpolação linear em buckets de histogramas clássicos (identificados pelo label le). Histogramas nativos não têm suporte. O argumento phi (nível do quantil) precisa ser um escalar constante. Expressões que variam a cada passo, como histogram_quantile(time() / 1000, ...), são rejeitadas com uma exceção NOT_IMPLEMENTED. Nota: min_of(a, b) e max_of(a, b) retornam, respectivamente, o menor ou o maior de dois valores escalares. Ambos os argumentos precisam ser escalares. Nota: min_of, max_of, ts_of_min_over_time, ts_of_max_over_time, ts_of_last_over_time, first_over_time, ts_of_first_over_time e mad_over_time são funções experimentais no Prometheus (habilitadas lá com --enable-feature=promql-experimental-functions); o ClickHouse as avalia sem exigir esse flag.

Operadores

Operadores binários aritméticos (+, -, *, /, %, ^, atan2) e de comparação (==, !=, <, >, <=, >= com o modificador opcional bool), com os modificadores on()/ignoring() e group_left()/group_right(). Operadores de conjunto lógicos and, or e unless, com os modificadores on()/ignoring(). Operadores unários + e -.

Operadores de agregação

sum, avg, min, max, count, count_values, stddev, stdvar, group, quantile, topk, bottomk, limitk — com os modificadores opcionais by() ou without().

Exemplo