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 destart_timeatéend_time(inclusive).
Valor retornado
As colunas retornadas pela função dependem do tipo de resultado da consulta passada ao parâmetropromql_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().