1 Funciones de agregación

Salvo que se indique lo contrario, todas las funciones listadas aquí son compatibles con:

Las funciones de agregación pueden trabajar con:

  • el historial de ítems, por ejemplo, min(/host/key,1h)
  • funciones foreach como único parámetro, por ejemplo, min(last_foreach(/*/key)) (solo en ítems calculados; no se puede usar en disparadores)

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

Función Descripción
avg El valor promedio de un ítem dentro del período de evaluación definido.
bucket_percentile Calcula el percentil a partir de los buckets de un histograma.
count El número de valores en un array devuelto por una función foreach.
histogram_quantile Calcula el φ-cuantil a partir de los buckets de un histograma.
item_count El número de ítems existentes en la configuración que coinciden con los criterios de filtro.
kurtosis La "apuntamiento" de la distribución de probabilidad en los valores recogidos dentro del período de evaluación definido.
mad La desviación absoluta mediana en los valores recogidos dentro del período de evaluación definido.
max El valor más alto de un ítem dentro del período de evaluación definido.
min El valor más bajo de un ítem dentro del período de evaluación definido.
skewness La asimetría de la distribución de probabilidad en los valores recogidos dentro del período de evaluación definido.
stddevpop La desviación estándar poblacional en los valores recogidos dentro del período de evaluación definido.
stddevsamp La desviación estándar muestral en los valores recogidos dentro del período de evaluación definido.
sum La suma de los valores recogidos dentro del período de evaluación definido.
sumofsquares La suma de los cuadrados en los valores recogidos dentro del período de evaluación definido.
varpop La varianza poblacional de los valores recogidos dentro del período de evaluación definido.
varsamp La varianza muestral de los valores recogidos dentro del período de evaluación definido.

Parámetros comunes

  • /host/key es un primer parámetro obligatorio común para las funciones que hacen referencia al historial de items del host
  • (sec|#num)<:desplazamiento de tiempo> es un segundo parámetro común para las funciones que hacen referencia al historial de items del host, donde:
    • sec - periodo de evaluación máximo en segundos (se pueden usar sufijos de tiempo), o
    • #num - rango de evaluación máximo en los últimos valores recogidos (si va precedido de una almohadilla)
    • desplazamiento de tiempo (opcional) permite mover el punto de evaluación hacia atrás en el tiempo. Consulte más detalles sobre cómo especificar el desplazamiento de tiempo.

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(filtro de item,periodo de tiempo,porcentaje)

Calcula el percentil a partir de los buckets de un histograma.

Parámetros:

Comentarios:

  • Sólo se admite en items calculados;
  • Esta función es un alias de histogram_quantile(porcentaje/100, bucket_rate_foreach(filtro de item, periodo de tiempo, 1)).
count(func_foreach(filtro de item,<período de tiempo>),<operador>,<patrón>)

El número de valores en un array devuelto por una función foreach.
Funciones foreach soportadas: 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. Consulte funciones foreach para más detalles. Tenga en cuenta que count_foreach y bucket_rate_foreach soportan parámetros adicionales.
  • filtro de item - ver filtro de item;
  • período de tiempo - ver período de tiempo;
  • operador (debe ir entre comillas dobles). operadores soportados:
    eq - igual
    ne - no igual
    gt - mayor
    ge - mayor o igual
    lt - menor
    le - menor o igual
    like - coincide si contiene el patrón (distingue mayúsculas/minúsculas)
    bitand - AND a nivel de bits
    regexp - coincidencia que distingue mayúsculas/minúsculas de la expresión regular dada en patrón
    iregexp - coincidencia que no distingue mayúsculas/minúsculas de la expresión regular dada en patrón
  • patrón - el patrón requerido (los argumentos de cadena deben ir entre comillas dobles); soportado si operador se especifica en el tercer parámetro.

Comentarios:

  • Usar count() con una función foreach relacionada con el histórico (max_foreach, avg_foreach, etc.) puede tener implicaciones en el rendimiento, mientras que usar exists_foreach(), que solo funciona con datos de configuración, no tendrá tal efecto.
  • Los parámetros opcionales operador o patrón no pueden dejarse vacíos después de una coma, solo omitirse completamente.
  • Con bitand como tercer parámetro, el cuarto parámetro patrón puede especificarse como dos números, separados por '/': número_a_comparar/mascara. count() calcula el "AND a nivel de bits" del valor y la mascara y compara el resultado con número_a_comparar. Si el resultado del "AND a nivel de bits" es igual a número_a_comparar, el valor se cuenta.
    Si número_a_comparar y mascara son iguales, solo es necesario especificar la mascara (sin '/').
  • Con regexp o iregexp como tercer parámetro, el cuarto parámetro patrón 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 la expresión regular global. Para el propósito de la coincidencia regexp, los valores float 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 items net.if.in que recibieron datos en la última hora hasta ahora
count(last_foreach(/*/vfs.fs.size[*,pused]),"gt",95) #el número de sistemas de archivos con más del 95% del espacio en disco usado
histogram_quantile(quantile,bucket1,value1,bucket2,value2,...)

Calcula el φ-cuantil a partir de los buckets de un histograma.
Función foreach soportada: bucket_rate_foreach.

Parámetros:

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

Comentarios:

  • Soportado solo en items calculados;
  • Corresponde funcionalmente a 'histogram_quantile' de PromQL;
  • Devuelve -1 si los valores del último bucket 'Infinity' ("+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(filtro de item)

El número de items existentes en la configuración que coinciden con los criterios del filtro.
Tipo de valor soportado: Entero.

Parámetro:

  • filtro de item: criterios para la selección de items, permite hacer referencia por grupo de hosts, host, clave de item y etiquetas. Se admiten comodines. Consulte filtro de item para más detalles.

Comentarios:

  • Sólo se admite en items calculados;
  • Funciona como un alias de la función count(exists_foreach(item_filter)).

Ejemplos:

item_count(/*/agent.ping?[group="Host group 1"]) #el número de hosts con el item *agent.ping* en el "Host group 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.