Skip to main content
Evalúa una consulta de Prometheus con datos de una tabla TimeSeries.

Sintaxis

Argumentos

  • db_name - El nombre de la base de datos donde se encuentra una tabla TimeSeries.
  • time_series_table - El nombre de una tabla TimeSeries.
  • promql_query - Una consulta escrita en sintaxis PromQL.
  • evaluation_time - La marca de tiempo de evaluación, con precisión de milisegundos o superior. Para evaluar una consulta en el momento actual, use now() como evaluation_time.

Valor devuelto

La función devuelve distintas columnas según el tipo de resultado de la consulta proporcionada en el parámetro promql_query: Los valores siempre son de tipo Float64, independientemente del tipo de los valores de la tabla TimeSeries. La escala S de las marcas de tiempo coincide con la de las marcas de tiempo de la tabla, pero nunca es inferior a 3 (milisegundos). La zona horaria TZ es la de evaluation_time si este es de tipo DateTime o DateTime64 con zona horaria; en caso contrario, es la zona horaria de las marcas de tiempo de la tabla. La columna samples se denomina time_series si la tabla TimeSeries tiene la version 2 o anterior.

Funciones de PromQL compatibles

Selectores

Selectores instantáneos, selectores de rango, comparadores de etiquetas (=, !=, =~, !~), modificadores offset, modificadores de @ timestamp y subconsultas.

Funciones

Nota: histogram_quantile usa interpolación lineal en los buckets de histogramas clásicos (identificados por la etiqueta le). Los histogramas nativos no son compatibles. El argumento phi (nivel de quantile) debe ser un escalar constante. Las expresiones que varían en cada paso, como histogram_quantile(time() / 1000, ...), se rechazan con una excepción NOT_IMPLEMENTED. Nota: min_of(a, b) y max_of(a, b) devuelven, respectivamente, el menor o el mayor de dos valores escalares. Ambos argumentos deben 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 y mad_over_time son funciones experimentales de Prometheus (habilitadas allí con --enable-feature=promql-experimental-functions); ClickHouse las evalúa sin requerir ese indicador.

Operadores

Operadores binarios aritméticos (+, -, *, /, %, ^, atan2) y de comparación (==, !=, <, >, <=, >= con el modificador opcional bool), con los modificadores on()/ignoring() y group_left()/group_right(). Operadores lógicos de conjuntos and, or y unless, con los modificadores on()/ignoring(). Operadores unarios + y -.

Operadores de agregación

sum, avg, min, max, count, count_values, stddev, stdvar, group, quantile, topk, bottomk, limitk — con los modificadores opcionales by() o without().

Ejemplo