Todas las funciones listadas aquí son compatibles en:
Las funciones se listan sin información adicional. Haga clic en la función para ver los detalles completos.
| Función | Descripción |
|---|---|
| change | La cantidad de diferencia entre el valor anterior y el último valor. |
| changecount | El número de cambios entre valores adyacentes dentro del período de evaluación definido. |
| count | El número de valores dentro del período de evaluación definido. |
| countunique | El número de valores únicos dentro del período de evaluación definido. |
| find | Buscar una coincidencia de valor dentro del período de evaluación definido. |
| first | El primer (el más antiguo) valor dentro del período de evaluación definido. |
| fuzzytime | Comprobar cuánto difiere la hora del agent pasivo de la hora del server/proxy Zabbix. |
| last | El valor más reciente. |
| logeventid | Comprobar si el ID de evento de la última entrada de log coincide con una expresión regular. |
| logseverity | La severidad de log de la última entrada de log. |
| logsource | Comprobar si la fuente de log de la última entrada de log coincide con una expresión regular. |
| monodec | Comprobar si ha habido una disminución monótona en los valores. |
| monoinc | Comprobar si ha habido un aumento monótono en los valores. |
| nodata | Comprobar que no se han recibido datos. |
| percentile | El percentil P de un período, donde P (porcentaje) se especifica mediante el tercer parámetro. |
| rate | La tasa promedio por segundo del incremento en un contador monótonamente creciente dentro del período de tiempo definido. |
/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:
Algunas notas generales sobre los parámetros de las funciones:
< >/host/key y (sec|#num)<:desplazamiento de tiempo> nunca deben ir entre comillasLa cantidad de diferencia entre el valor anterior y el último.
Tipos de valores soportados: Float, Integer, String, Text, Log.
Para cadenas devuelve: 0 - los valores son iguales; 1 - los valores difieren.
Parámetros: ver parámetros comunes.
Comentarios:
+4-2-2.5.Ejemplos:
change(/host/system.uptime)<0 #el cambio en el tiempo de actividad del sistema ha sido negativo desde el último valor (lo que indica un reinicio)
change(/host/system.cpu.load[all,avg1])>2 #la carga de CPU (durante un minuto) ha aumentado en más de 2 desde el último valor
change(/host/vfs.fs.size[/,free])<-1G #el espacio libre en disco ha disminuido en más de 1 GB entre comprobacionesEl número de cambios entre valores adyacentes dentro del período de evaluación definido.
Tipos de valor soportados: Float, Integer, String, Text, Log.
Parámetros:
Para tipos de valor no numéricos, el parámetro mode se ignora.
Ejemplos:
changecount(/host/icmpping,10m)>5 #el estado del ping ha cambiado más de 5 veces en 10 minutos
changecount(/host/vfs.file.contents["/sys/class/net/eth0/operstate"],1h)>5 #el estado operativo de eth0 ha cambiado más de 5 veces en una hora
changecount(/host/proc.num[httpd],15m)>10 #el número de procesos httpd ha cambiado más de 10 veces en 15 minutos
changecount(/host/key,#10,"inc") #el número de incrementos de valor (en relación con el valor adyacente) entre los últimos 10 valores
changecount(/host/key,24h,"dec") #el número de disminuciones de valor (en relación con el valor adyacente) durante las últimas 24 horas hasta ahoraEl número de valores dentro del período de evaluación definido.
Tipos de valores soportados: Float, Integer, String, Text, Log.
Parámetros:
patternpatternComentarios:
pattern puede especificarse como dos números, separados por '/': número_a_comparar_con/máscara. count() calcula el "AND a nivel de bit" entre el valor y la máscara y compara el resultado con número_a_comparar_con. Si el resultado del "AND a nivel de bit" es igual a número_a_comparar_con, el valor se cuenta.pattern puede ser una expresión regular ordinaria o global (que comienza 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. A efectos de coincidencia regexp, los valores float siempre se representarán con 4 dígitos decimales después del '.'. Tenga en cuenta también 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 al cuarto dígito decimal.Ejemplos:
count(/host/icmpping,30m,,"0")>5 #el ping ha fallado más de 5 veces en 30 minutos
count(/host/key,10m,"like","error") #el número de valores de los últimos 10 minutos hasta ahora que contienen 'error'
count(/host/key,10m,,12) #el número de valores de los últimos 10 minutos hasta ahora que son iguales a '12'
count(/host/key,10m,"gt",12) #el número de valores de los últimos 10 minutos hasta ahora que son mayores que '12'
count(/host/key,#10,"gt",12) #el número de valores dentro de los últimos 10 valores hasta ahora que son mayores que '12'
count(/host/key,10m:now-1d,"gt",12) #el número de valores entre 24 horas y 10 minutos y 24 horas atrás desde ahora que fueron mayores que '12'
count(/host/key,10m,"bitand","6/7") #el número de valores de los últimos 10 minutos hasta ahora que tienen '110' (en binario) en los 3 bits menos significativos
count(/host/key,10m:now-1d) #el número de valores entre 24 horas y 10 minutos y 24 horas atrás desde ahoraEl número de valores únicos dentro del período de evaluación definido.
Tipos de valores soportados: Float, Integer, String, Text, Log.
Parámetros:
patternpatternComentarios:
pattern puede especificarse como dos números, separados por '/': número_a_comparar/mascara. countunique() calcula el "AND a nivel de bit" entre el valor y la mascara y compara el resultado con número_a_comparar. Si el resultado del "AND a nivel de bit" es igual a número_a_comparar, el valor se cuenta.pattern puede ser una expresión regular ordinaria o global (que comienza 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. A efectos de coincidencia regexp, los valores float siempre se representarán con 4 dígitos decimales después del '.'. Tenga en cuenta también 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 al cuarto dígito decimal.Ejemplos:
countunique(/host/key,10m) #el número de valores únicos para los últimos 10 minutos hasta ahora
countunique(/host/key,10m,"like","error") #el número de valores únicos para los últimos 10 minutos hasta ahora que contienen 'error'
countunique(/host/key,10m,,12) #el número de valores únicos para los últimos 10 minutos hasta ahora que son igual a '12'
countunique(/host/key,10m,"gt",12) #el número de valores únicos para los últimos 10 minutos hasta ahora que son mayores que '12'
countunique(/host/key,#10,"gt",12) #el número de valores únicos dentro de los últimos 10 valores hasta ahora que son mayores que '12'
countunique(/host/key,10m:now-1d,"gt",12) #el número de valores únicos entre 24 horas y 10 minutos y 24 horas atrás desde ahora que fueron mayores que '12'
countunique(/host/key,10m,"bitand","6/7") #el número de valores únicos para los últimos 10 minutos hasta ahora que tienen '110' (en binario) en los 3 bits menos significativos
countunique(/host/key,10m:now-1d) #el número de valores únicos entre 24 horas y 10 minutos y 24 horas atrás desde ahoraBusca una coincidencia de valor dentro del período de evaluación definido.
Tipos de valores soportados: Float, Integer, String, Text, Log.
Devuelve: 1 - encontrado; 0 - en caso contrario.
Parámetros:
operators soportados:pattern (distingue mayúsculas/minúsculas)patternpatternoperator es regexp, iregexpComentarios:
pattern puede ser una expresión regular ordinaria o global (comenzando con '@'). En el caso de expresiones regulares globales, la distinción de mayúsculas/minúsculas se hereda de la configuración de la expresión regular global.Ejemplos:
find(/host/key,10m,"like","error") #busca un valor que contenga 'error' en los últimos 10 minutos hasta ahora
find(/host/agent.version,,"like","beta")=1 #el agent de Zabbix tiene versión beta, debe actualizarse
find(/host/log[/var/log/nginx/access.log],,"regexp"," 500 ")=1 #se ha encontrado un error interno del servidor webEl primer (el más antiguo) valor dentro del período de evaluación definido.
Tipos de valores soportados: Float, Integer, String, Text, Log.
Parámetros:
Ver también last().
Ejemplo:
Comprueba cuánto difiere la hora del agent pasivo de la hora del server/proxy de Zabbix.
Tipos de valores soportados: Float, Integer.
Devuelve: 1 - la diferencia entre el valor del item pasivo (como timestamp) y el timestamp del server/proxy de Zabbix (el reloj de la recogida de valores) es menor o igual a sec segundos; 0 - en caso contrario.
Parámetros:
Comentarios:
vfs.file.time[/ruta/archivo,modify] para comprobar que el archivo no ha recibido actualizaciones durante mucho tiempo.fuzzytime(/Host/system.localtime,60s)=0 or last(/Host/trap)<>0.Ejemplos:
fuzzytime(/host/system.localtime,5m)=0 #la hora local del cliente difiere de la hora del server/proxy de Zabbix en más de 5 minutos
fuzzytime(/host/system.localtime,5m)=0 and nodata(/host/system.localtime,10m)=0 #la hora local del cliente difiere de la hora del server/proxy de Zabbix en más de 5 minutos (asegurándose de que el item no ha dejado de informar de datos)El valor más reciente.
Tipos de valores soportados: Float, Integer, String, Text, Log.
Parámetros:
Comentarios:
last(/host/key) siempre es igual a last(/host/key,#1); last(/host/key,#3) - el tercer valor más reciente (no los tres valores más recientes).Ejemplos:
last(/host/key) #recuperar el último valor
last(/host/key,#2) #recuperar el valor anterior
last(/host/key,#1) <> last(/host/key,#2) #el último y el valor anterior difierenComprueba si el ID de evento de la última entrada de log coincide con una expresión regular.
Tipos de valor soportados: Log.
Devuelve: 0 - no coincide; 1 - coincide.
Parámetros:
Ejemplos:
logeventid(/host/eventlog[Security],,"4625")=1 #se ha encontrado una entrada de log con un ID que coincide con "4625" (autenticación fallida)
logeventid(/host/eventlog[System],,"6008|41")=1 #se ha encontrado una entrada de log con un ID que coincide con "6008" o "41"Gravedad del último registro de log.
Tipos de valor soportados: Log.
Devuelve: 0 - gravedad por defecto; N - gravedad (entero, útil para logs de eventos de Windows: 1 - Información, 2 - Advertencia, 4 - Error, 7 - Auditoría fallida, 8 - Auditoría exitosa, 9 - Crítico, 10 - Detallado).
Parámetros:
Zabbix toma la gravedad del log del campo Information del log de eventos de Windows.
Ejemplos:
logseverity(/host/log[/var/log/syslog],10m)>3 #se encontró una entrada de log con gravedad superior a "3"
logseverity(/host/eventlog[System],10m)=4 #se encontró una entrada de log con gravedad igual a "Error"Comprueba si la fuente del último registro coincide con una expresión regular.
Tipos de valor soportados: Log.
Devuelve: 0 - no coincide; 1 - coincide.
Parámetros:
Normalmente se utiliza para los registros de eventos de Windows.
Ejemplos:
logsource(/host/eventlog[Application],,"MSSQLSERVER")=1 #se ha encontrado una entrada de registro con una fuente que coincide con "MSSQLSERVER"
logsource(/host/eventlog[System],,"Service Control Manager")=1 #se ha encontrado una entrada de registro con una fuente que coincide con "Service Control Manager"
logsource(/host/eventlog[System],,"Service Control Manager")=1 and logeventid(/host/eventlog[System],,"7031")=1 #se ha encontrado una entrada de registro con una fuente que coincide con "Service Control Manager" y un ID de evento que coincide con "7031"Comprueba si ha habido una disminución monótona en los valores.
Tipos de valores soportados: Integer.
Devuelve: 1 - si todos los elementos en el período de tiempo disminuyen continuamente; 0 - en caso contrario.
Parámetros:
Ejemplos:
monodec(/host/system.swap.size[all,free],60s) + monodec(/host2/system.swap.size[all,free],60s) + monodec(/host3/system.swap.size[all,free],60s) #calcular en cuántos hosts ha habido una disminución en el tamaño de swap libre
monodec(/host/proc.num[nginx],10m,"strict")=1 #el número de procesos nginx ha disminuido monótonamente durante 10 minutosComprueba si ha habido un aumento monótono en los valores.
Tipos de valores soportados: Integer.
Devuelve: 1 - si todos los elementos en el periodo de tiempo aumentan continuamente; 0 - en caso contrario.
Parámetros:
Ejemplos:
monoinc(/host/system.localtime,#3,"strict")=0 #la hora local del sistema no ha aumentado de forma consistente
monoinc(/host/vfs.dir.count[/mnt/data/logs],24h,"weak")=0 #dispara si el recuento de archivos se ha estancado durante 24 horas (se espera que crezca)Comprobar si no se han recibido datos.
Tipos de valor soportados: Entero, Decimal, Caracter, Texto, Log.
Devuelve: 1 - si no se han recibido datos durante el periodo de tiempo definido; 0 - en caso contrario.
Parámetros:
nodata(/host/key,0) no está permitidoComentarios:
nodata(/host/key,5m,"strict"); en este caso la función se activará tan pronto como haya pasado el periodo de evaluación (cinco minutos) sin datos.Ejemplo:
nodata(/host/agent.ping,5m)=1 #trigger si no se han recibido datos del agent de Zabbix durante 5 minutosEl percentil P de un período, donde P (porcentaje) se especifica mediante el tercer parámetro.
Tipos de valor soportados: Float, Integer.
Parámetros:
Ejemplos:
percentile(/host/net.if.in[eth0,bytes],1h,95)>1000000 #el percentil 95 de la entrada de red (bytes/seg) durante 1 hora ha superado un umbral (por ejemplo, 1 MB/s)
percentile(/host/system.cpu.util,5m,95)>80 #el percentil 95 del porcentaje de utilización de CPU en modo usuario ha superado el 80
percentile(/host/icmppingsec[192.168.0.2],15m,95)>0.15 #la mayoría de las mediciones de latencia están por debajo de 150 ms, pero el extremo superior (el 5% superior) implica retrasos regulares
percentile(/host/net.if.in[eth0,bytes],1h,50) #calcula el percentil 50 (el valor mediano) del tráfico de red entrante durante una hora; esto da un resultado diferente a avg() (el promedio), ya que percentile no considera los valores atípicos
(percentile(/host/net.if.in[eth0,bytes],1h,50)+percentile(/host/net.if.in[eth0,bytes],1h,51))/2 #calcula el valor mediano preciso con un número par de valores durante una horaLa tasa promedio por segundo del aumento en un contador monótonamente creciente dentro del período de tiempo definido.
Tipos de valor soportados: Float, Integer.
Parámetros:
Corresponde funcionalmente a 'rate' de PromQL.
Ejemplos:
rate(/host/key,30s) #si el aumento monótono durante 30 segundos es 20, esta función devuelve 0.67.
rate(/host/net.if.in[eth0,bytes],5m)>500000 #la tasa de tráfico entrante en la interfaz eth0 ha superado los 500 KB/s en los últimos 5 minutos
rate(/host/app.requests.count,1m)>100 #el contador de solicitudes ha aumentado a >100 solicitudes por segundo en el último minutoConsulte todas las funciones admitidas.