En [cálculos] agregados (/manual/config/items/itemtypes/calculado) El servidor Zabbix puede recopilar información de varios elementos (por haciendo consultas directas a la base de datos) para calcular un agregado, dependiendo de la función agregada utilizada.
Los cálculos agregados no requieren que ningún agente se ejecute en el host siendo monitoreado.
Para definir cálculos agregados, seleccione el tipo de elemento Calculado.
Los agregados se pueden recuperar trabajando con:
dónde:
función_agregada
es una de las [funciones agregadas] admitidas (/manual/appendix/functions/agregado#agregado-funciones-1): avg, max, min, sum, etc.foreach_function
es una de las funciones foreach admitidas: avg_foreach, count_foreach, etc.Las funciones de Foreach usan un filtro de elementos, para trabajar con el historial de varios elementos y devolver una matriz de valores, uno para cada elemento.
Si el agregado da como resultado un valor flotante, se recortará a un número entero si el tipo de información del elemento agregado es Numérico (no firmado).
Un cálculo agregado puede dejar de ser compatible si:
Ejemplos de claves para cálculos agregados.
Espacio total en disco del grupo de host 'Servidores MySQL'.
Suma de los valores más recientes de todos los elementos que coinciden con net.if.in[*] en el host.
Carga promedio del procesador del grupo de host 'Servidores MySQL'.
Promedio de 5 minutos del número de consultas por segundo para el grupo host 'Servidores MySQL'.
Carga promedio de CPU en todos los hosts en varios grupos de hosts que tienen la etiquetas específicas.
avg(last_foreach(/*/system.cpu.load?[(grupo="Servidores A" o grupo="Servidores B" o grupo="Servidores C") y (etiqueta="Servicio:" o etiqueta="Importancia: Alto")]))
Cálculo utilizado en las últimas sumas de valores de artículos de un grupo anfitrión completo.
sum(last_foreach(/*/net.if.out[eth0,bytes]?[group="video"])) / sum(last_foreach(/*/nginx_stat.sh[active]?[group="video"]) )
El número total de elementos no admitidos en el grupo de host 'Servidores Zabbix'.
Expressions (including function calls) cannot be used as history, trend, or foreach function parameters. However, those functions themselves can be used in other (non-historical) function parameters.
Expression | Example |
---|---|
Valid | avg(last(/host/key1),last(/host/key2)*10,last(/host/key1)*100) max(avg(avg_foreach(/*/system.cpu.load?[group="Servers A"],5m)),avg(avg_foreach(/*/system.cpu.load?[group="Servers B"],5m)),avg(avg_foreach(/*/system.cpu.load?[group="Servers C"],5m))) |
Invalid | sum(/host/key,10+2) sum(/host/key, avg(10,2)) sum(/host/key,last(/host/key2)) |
Note that in an expression like:
it cannot be guaranteed that both parts of the equation will always have the same set of values. While one part of the expression is evaluated, a new value for the requested period may arrive and then the other part of the expression will have a different set of values.