Reconocer los distintos mecanismos de entrada de datos y su uso práctico
Cada ítem en Zabbix representa una fuente específica de datos.
Pero no todos los ítems funcionan igual ni se alimentan de la misma forma.
Un operador debe ser capaz de identificar el tipo de ítem, entender de dónde vienen sus datos, y saber por qué puede fallar.
No basta con ver “No data” en la GUI.
Es necesario saber si el ítem espera datos, los genera, los calcula o los obtiene de terceros.
| Tipo de ítem | ¿Quién lo alimenta? | Modo | Uso principal | Riesgos comunes |
| ----------------------- | ---------------------------------------------- | ------- | ------------------------------------------- | ------------------------------------------ |
| Zabbix agent
| Server o Proxy consulta al agente | Pull | CPU, RAM, procesos, disco | Puerto cerrado, agente caído, timeout |
| Zabbix agent (active)
| Agente envía al server | Push | Ítems desde sistemas NAT/remotos | Hostname incorrecto, ServerActive inválido |
| Zabbix trapper
| zabbix_sender
u otro proceso externo | Push | Scripts personalizados, eventos programados | Ítem no creado, key incorrecta |
| External check
| Server ejecuta comando o script externo | Pull | Validación con binarios, monitoreo puntual | Script lento, permisos, timeout |
| Calculated
| Zabbix calcula fórmula a partir de otros ítems | Interno | Sumar, restar, combinar métricas | Ítems fuente sin datos, error en fórmula |
| SNMP
| Server consulta por protocolo SNMP | Pull | Switches, routers, impresoras, UPS | Comunidad errónea, firewall, OID inválido |
| Simple check
| Server hace prueba básica (ping, TCP, DNS) | Pull | Validación rápida de disponibilidad | Host apagado, puerto cerrado, DNS mal |
| HTTP agent
| Server ejecuta petición HTTP/REST | Pull | Monitoreo de APIs, sitios, webhooks | Código de estado inesperado, timeout |
Zabbix agent
y Zabbix agent (active)
Ya abordados en profundidad en módulos anteriores.
Permiten recolección local del sistema operativo.
Definidos en la GUI como:
Type: Zabbix agent
Key: system.cpu.util[,user]
El operador debe revisar:
Si el agente está corriendo
Si el ítem tiene update interval correcto
Si el canal (pasivo o activo) está bien definido
Zabbix trapper
Ítem pasivo: espera que otro sistema le envíe los datos.
No se recolecta por sí mismo
Necesita uso de zabbix_sender
o API personalizada
Ideal para métricas que solo existen cuando el evento ocurre
El ítem debe ser creado previamente.
Zabbix no acepta datos para ítems inexistentes.
🧪 Diagnóstico:
zabbix_sender -z <ip_server> -s "web01" -k "custom.metric" -o 55
Si el ítem no existe o no es de tipo trapper
, se ignora sin error visible en GUI.
External check
Ejecuta un comando o script directamente en el Zabbix Server (no en el host monitoreado).
Se usa cuando el Server necesita validar algo que no expone Zabbix Agent.
Por ejemplo: verificar si existe un archivo NFS, ejecución de binario, conectividad con algún puerto complejo, etc.
Ruta del script:
/etc/zabbix/externalscripts/
Ejemplo en GUI:
Key: ext.burp.client.status.sh[webserver01]
Type: External check
🧨 Riesgos:
Script demasiado lento → supera tiempo máximo (Timeout=3
)
Permisos incorrectos
Script no existe o tiene error
Ver en logs:
tail -f /var/log/zabbix/zabbix_server.log
Calculated
No obtiene datos, los calcula internamente con base en otros ítems.
Ideal para consolidar información: sumas, promedios, comparaciones, expresiones condicionales
Usa funciones como last()
, avg()
, min()
, etc.
Ejemplo:
last(/srv01/output.1) + last(/srv01/output.2)
Muy útil para:
Convertir Watts a Kilowatts
Sumar CPU de varios núcleos
Promediar disco usado entre discos
🧨 Riesgos:
Ítems fuente sin datos → el ítem calculado queda en “No data”
Error en fórmula → ítem se invalida
No es evaluado por proxy, solo por el Server
SNMP agent
(v2c, v3)Consulta a un equipo que expone datos por protocolo SNMP (UDP 161)
Requiere una OID válida
Se configura comunidad (public
, private
, personalizada)
SNMPv3 permite autenticación y cifrado
🧪 Diagnóstico en consola:
snmpget -v2c -c public <ip> 1.3.6.1.2.1.1.3.0
🧨 Riesgos:
Comunidad incorrecta → timeout
OID inválida → “No such object”
Firewall bloqueando UDP/161
Cada ítem SNMP debe tener un tiempo de respuesta bajo (<1s), o causará problemas en el poller del Server o Proxy.
Simple check
Usado para validar cosas básicas como:
Ping (ICMP)
Puertos abiertos (TCP)
Resolución de DNS
Tiempo de respuesta de red
Ejemplo:
Key: icmpping
Type: Simple check
🧨 Limitaciones:
No ofrece detalles (no mide CPU, RAM, procesos)
Solo dice si algo está “arriba o abajo”
Algunos checks dependen de binarios en el Server
Monitoring → Latest Data → Host → Filtro por Type
SELECT hostid, key_, type, name FROM items WHERE status=0;
Tipos numéricos de ítems:
| Tipo | Valor numérico en DB |
| --------------------- | -------------------- |
| Zabbix agent | 0 |
| SNMPv1 | 1 |
| Trapper | 2 |
| Simple check | 3 |
| SNMPv2 | 4 |
| Zabbix agent (active) | 7 |
| External check | 10 |
| Calculated | 15 |
| SNMPv3 | 16 |
| HTTP agent | 18 |
*Cada ítem tiene su propio canal de vida.
Entender de dónde vienen los datos permite detectar fallos antes de que sean visibles.
Un operador maduro no solo ve "No data", sino que sabe por qué no llega y de dónde se espera.*
El operador reconoce todos los tipos de ítems en GUI
Sabe qué canal alimenta a cada uno (pull, push, interno)
Puede diagnosticar fallas por tipo (SNMP sin comunidad, external sin permisos, calculated sin fuente)
Entiende el valor operativo de elegir el tipo correcto de ítem