1 Funciones de agregación

Excepto que se indique lo contrario, todas las funciones enumeradas aquí son compatibles en:

Las funciones de agregación pueden funcionar con:

  • historial de métricas, por ejemplo, min(/host/key,1h)
  • funciones foreach como el único parámetro, por ejemplo, min(last_foreach(/*/key)) (solo en métricas calculadas; no se puede usar en iniciadores)

Las funciones se enumeran sin información adicional. Haga clic en la función para ver los detalles completos.

Función Descripción
avg El valor promedio de una métrica dentro del período de evaluación definido.
bucket_percentile Calcula el percentil a partir de las agrupaciones de datos de un histograma.
count El recuento de valores en una matriz devuelta por una función foreach.
histogram_quantile Calcula el φ-cuantil a partir de las agrupaciones de datos de un histograma.
item_count El recuento de métricas existentes en la configuración que coinciden con los criterios del filtro.
kurtosis La "cola" de la distribución de probabilidad en los valores recopilados dentro del período de evaluación definido.
mad La desviación absoluta mediana en los valores recopilados dentro del período de evaluación definido.
max El valor más alto de una métrica dentro del período de evaluación definido.
min El valor más bajo de una métrica dentro del período de evaluación definido.
asimetría La asimetría de la distribución de probabilidad en los valores recopilados dentro del período de evaluación definido.
stddevpop La desviación estándar de la población en los valores recopilados dentro del período de evaluación definido.
stddevsamp La desviación estándar de la muestra en los valores recopilados dentro del período de evaluación definido.
sum La suma de los valores recopilados dentro del período de evaluación definido.
sumofsquares La suma de cuadrados en los valores recopilados dentro del período de evaluación definido.
varpop La varianza de la población de los valores recopilados dentro del período de evaluación definido.
varsamp La varianza de la muestra de los valores recopilados dentro del período de evaluación definido.

Parámetros comunes

  • /host/key es un primer parámetro obligatorio común para las funciones haciendo referencia al historial de la métrica del equipo
  • (sec|#num)<:time shift> es un segundo parámetro común para las funciones que hacen referencia al historial de la métrica del equipo, donde:
    • seg - período máximo de evaluación en segundos (se pueden utilizar sufijos) de tiempo , o
    • #num - máximo rango de evaluación en la última versión de valores recopilados (si están precedidos por una almohadilla)
    • time shift (opcional) permite mover el punto de evaluación atrás en el tiempo. Ver más detalles sobre como especificar el desplazamiento de hora.

Detalles de la función

Algunas notas generales sobre los parámetros de función:

  • Los parámetros de la función están separados por una coma.
  • Los parámetros de la función opcionales (o partes de parámetros) se indican mediante < >
  • Los parámetros específicos de la función se describen con cada función.
  • Los parámetros /host/key y (sec|#num)<:time shift> nunca deben ser encerrados entre comillas
avg(/host/key,(sec|#num)<:time shift>)

El valor promedio de una métrica dentro del período de evaluación definido.
Tipos de valores admitidos: Flotante, Entero.
Funciones foreach admitidas: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.

Parámetros: consulte parámetros comunes.

El desplazamiento del tiempo es útil cuando es necesario comparar el valor promedio actual con el valor promedio de hace algún tiempo.

Ejemplos:

avg(/host/key,1h) #el valor promedio de la última hora hasta ahora
       avg(/host/key,1h:now-1d) #el valor promedio de una hora desde hace 25 horas hasta hace 24 horas a partir de ahora
       avg(/host/key,#5) #el valor promedio de los cinco últimos valores
       avg(/host/key,#5:now-1d) #el valor promedio de los cinco últimos valores excluyendo los valores recibidos en las últimas 24 horas
bucket_percentile(item filter,time period,percentage)

Calcula el percentil a partir de las agrupaciones de datos de un histograma.

Parámetros:

Comentarios:

  • Compatible únicamente con métricas calculadas;
  • Esta función es un alias para histogram_quantile(percentage/100, bucket_rate_foreach(filtro de métricas, período de tiempo, 1)).
count(func_foreach(filtro de métrica,<período de tiempo>),<operador>,<patrón>)

El recuento de valores en una matriz devuelta por una función foreach.
Funciones foreach admitidas: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.

Parámetros:

  • func_foreach - función foreach para la cual se debe contar el número de valores devueltos (con argumentos admitidos). Consulte funciones foreach para obtener más detalles.
  • filtro de métricas - consulte filtro de elementos;
  • período de tiempo - consulte período de tiempo;
  • operador (debe estar entre comillas dobles). Operadores admitidos:
    eq - igual
    ne - no igual
    gt - mayor
    ge - mayor o igual
    lt - menos<br >le - menor o igual
    like - coincide si contiene patrón (distingue entre mayúsculas y minúsculas)
    bitand - AND bit a bit
    regexp - coincide entre mayúsculas y minúsculas de la expresión regular dada en pattern
    iregexp - coincidencia que no distingue entre mayúsculas y minúsculas de la expresión regular dada en pattern
  • patrón: el patrón requerido (los argumentos de cadena deben estar entre comillas dobles); compatible si se especifica operador en el tercer parámetro.

Comentarios:

  • El uso de count() con una función foreach relacionada con el historial (max_foreach, avg_foreach, etc.) puede tener implicaciones en el rendimiento, mientras que el uso de exists_foreach(), que funciona solo con datos de configuración, no tendrá tal efecto.
  • Los parámetros opcionales operador o patrón no se pueden dejar vacíos después de una coma, solo se pueden omitir por completo.
  • Con bitand como tercer parámetro, el cuarto parámetro patrón se puede especificar como dos números, separados por '/': número_para_comparar_con/máscara. count() calcula "Y bit a bit" a partir del valor y la máscara y compara el resultado con número_a_comparar_con. Si el resultado de "Y bit a bit" es igual a number_to_compare_with, el valor se cuenta.
    Si number_to_compare_with y mask son iguales, solo es necesario especificar la mask (sin '/').
  • Con regexp o iregexp como tercer parámetro, el cuarto parámetro pattern puede ser una expresión regular ordinaria o global (comenzando con '@'). En el caso de expresiones regulares globales, la distinción entre mayúsculas y minúsculas se hereda de la configuración de expresiones regulares globales. A los efectos de la coincidencia de expresiones regulares, los valores flotantes siempre se representarán con 4 dígitos decimales después de '.'. También tenga en cuenta que, para números grandes, la diferencia en la representación decimal (almacenada en la base de datos) y binaria (utilizada por el servidor Zabbix) puede afectar el cuarto dígito decimal.

Ejemplos:

count(max_foreach(/*/net.if.in[*],1h)) #el número de elementos net.if.in que recibieron datos en la última hora hasta ahora
       count(last_foreach(/*/vfs.fs.dependent.size[*,pused]),"gt",95) #la cantidad de sistemas de archivos con más del 95% del espacio en disco utilizado
histogram_quantile(quantile,bucket1,value1,bucket2,value2,...)

Calcula el cuantil φ a partir de las agrupaciones de datos de un histograma.
Función foreach admitida: bucket_rate_foreach.

Parámetros:

  • cuantil - 0 ≤ φ ≤ 1;
  • bucketN, valueN - pares ingresados manualmente (>=2) de parámetros o la respuesta de bucket_rate_foreach.

Comentarios:

  • Compatible únicamente con métricas calculadas;
  • Funcionalmente corresponde a 'histogram_quantile' de PromQL;
  • Devuelve -1 si los valores de la última agrupación de datos 'Infinito' ("+inf") son iguales a 0.

Ejemplos:

histogram_quantile(0.75,1.0,last(/host/rate_bucket[1.0]),"+Inf",last(/host/rate_bucket[Inf]))
       histogram_quantile(0.5,bucket_rate_foreach(//item_key,30s))
item_count(item filter)

El recuento de métricas existentes en la configuración que coinciden con los criterios del filtro.
Tipo de valor admitido: Entero.

Parámetro:

  • filtro de métricas: criterios para la selección de métricas, permite hacer referencia por grupo de equipos, equipo, clave de métrica y etiquetas. Se admiten comodines. Consulte filtro de métricas para obtener más detalles.

Comentarios:

  • Compatible únicamente con métricas calculadas;
  • Funciona como alias para la función count(exists_foreach(item_filter)).

Ejemplos:

item_count(/*/agent.ping?[group="Grupo de hosts 1"]) #el número de equipos con la métricas *agent.ping* en el "grupo de equipos 1"
kurtosis(/host/key,(sec|#num)<:time shift>)

La "cola" de la distribución de probabilidad en los valores recopilados dentro del período de evaluación definido. Ver también: Kurtosis.
Tipos de valores admitidos: Flotante, Entero.
Función foreach admitida: last_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

kurtosis(/host/key,1h)  #kurtosis durante la última hora hasta ahora
mad(/host/key,(sec|#num)<:time shift>)

La desviación absoluta mediana en los valores recopilados dentro del período de evaluación definido. Ver también: Desviación absoluta de la mediana.
Tipos de valores admitidos: Flotante, Entero.
Función foreach admitida: last_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

mad(/host/key,1h) #desviación absoluta media durante la última hora hasta ahora
max(/host/key,(sec|#num)<:time shift>)

El valor más alto de una métrica dentro del período de evaluación definido.
Tipos de valores admitidos: Flotante, Entero.
Funciones foreach admitidas: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

max(/host/key,1h) - min(/host/key,1h) #calcula la diferencia entre los valores máximo y mínimo desde la última hora hasta ahora (el delta de valores)
min(/host/key,(sec|#num)<:time shift>)

El valor más bajo de una métrica dentro del período de evaluación definido.
Tipos de valores admitidos: Flotante, Entero.
Funciones foreach admitidas: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

max(/host/key,1h) - min(/host/key,1h) #calcula la diferencia entre los valores máximo y mínimo desde la última hora hasta ahora (el delta de valores)
skewness(/host/key,(sec|#num)<:time shift>)

La asimetría de la distribución de probabilidad en los valores recolectados dentro del período de evaluación definido. Ver también: Asimetría.
Tipos de valores admitidos: Flotante, Entero.
Función foreach admitida: last_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

skewness(/host/key,1h) #la asimetría de la última hora hasta ahora
stddevpop(/host/key,(sec|#num)<:time shift>)

La desviación estándar de la población en los valores recopilados dentro del período de evaluación definido. Ver también: Desviación estándar.
Tipos de valores admitidos: Flotante, Entero.
Función foreach admitida: last_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

stddevpop(/host/key,1h) #la desviación estándar de la población durante la última hora hasta ahora
stddevsamp(/host/key,(sec|#num)<:time shift>)

La desviación estándar de la muestra en los valores recopilados dentro del período de evaluación definido. Ver también: Desviación estándar.
Tipos de valores admitidos: Flotante, Entero.
Función foreach admitida: last_foreach.

Parámetros: consulte parámetros comunes.

Se requieren al menos dos valores de datos para que esta función funcione.

Ejemplo:

stddevsamp(/host/key,1h) #la desviación estándar de muestra durante la última hora hasta ahora
sum(/host/key,(sec|#num)<:time shift>)

La suma de los valores recopilados dentro del período de evaluación definido.
Tipos de valores admitidos: Flotante, Entero.
Funciones foreach admitidas: avg_foreach, count_foreach, exists_foreach, last_foreach, max_foreach, min_foreach, sum_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

sum(/host/key,1h) #la suma de valores de la última hora hasta ahora
sumofsquares(/host/key,(sec|#num)<:time shift>)

La suma de cuadrados de los valores recopilados dentro del período de evaluación definido.
Tipos de valores admitidos: Flotante, Entero.
Función foreach admitida: last_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

sumofsquares(/host/key,1h) #la suma de cuadrados de la última hora hasta ahora
varpop(/host/key,(sec|#num)<:time shift>)

La varianza de la población de los valores recopilados dentro del período de evaluación definido. Ver también: Varianza.
Tipos de valores admitidos: Flotante, Entero.
Función foreach admitida: last_foreach.

Parámetros: consulte parámetros comunes.

Ejemplo:

varpop(/host/key,1h) #la variación de la población durante la última hora hasta ahora
varsamp(/host/key,(sec|#num)<:time shift>)

La varianza de la muestra de los valores recopilados dentro del período de evaluación definido. Ver también: Varianza.
Tipos de valores admitidos: Flotante, Entero.
Función foreach admitida: last_foreach.

Parámetros: consulte parámetros comunes.

Se requieren al menos dos valores de datos para que esta función funcione.

Ejemplo:

varsamp(/host/key,1h) #la varianza de muestra de la última hora hasta ahora

Consulte todas las funciones admitidas.