1 Creando una métrica

Descripción general

Para crear un item en el frontend de Zabbix, haga lo siguiente:

  • Vaya a: Data collection > Hosts
  • Haga clic en Items en la fila del host
  • Haga clic en Create item en la esquina superior derecha de la pantalla
  • Introduzca los parámetros del item en el formulario

También puede crear un item abriendo uno existente, haciendo clic en el botón Clone y luego guardándolo con un nombre diferente.

Configuración

La pestaña Item contiene los atributos generales del item.

Todos los campos de entrada obligatorios están marcados con un asterisco rojo.

Parameter Description
Name Nombre del item.
Se admiten macros de usuario.
Type Tipo de item. Consulte las secciones individuales de tipo de item.
Key Clave del item (hasta 2048 caracteres).
Las claves de item admitidas se pueden encontrar en las secciones individuales de cada tipo de item.
La clave debe ser única dentro de un solo host.
Si el tipo de clave es 'Zabbix agent', 'Zabbix agent (active)' o 'Simple check', el valor de la clave debe ser compatible con Zabbix agent o Zabbix server.
Véase también: el formato correcto de la clave.
Type of information El tipo de datos usado para validar el valor del item y almacenarlo en la base de datos, tanto después de cualquier conversión:
Numeric (unsigned) - entero sin signo de 64 bits;
Numeric (float) - número de punto flotante de 64 bits;
Character - texto corto;
Log - texto largo con o sin propiedades de registro (marca de tiempo, origen, severidad, ID del evento de registro);
Text - texto largo;
Binary - número binario (solo compatible para items dependientes);
JSON - datos JSON estructurados, almacenados de forma nativa en la base de datos (no compatible para items calculados).
Los items que devuelven valores con el tipo de datos binary o JSON no son compatibles en fórmulas de items calculados ni en expresiones de trigger.
Consulte límites de datos del item para conocer los límites de almacenamiento por tipo de datos y backend de base de datos.
Para los items que devuelven datos en un único formato específico, se selecciona automáticamente un tipo de datos coincidente; por ejemplo, system.cpu.load y system.cpu.util devuelven ambos un número de punto flotante de 64 bits, por lo que Numeric (float) se selecciona automáticamente.
Host interface Seleccione la interfaz del host. Este campo está disponible al editar un item a nivel de host.
Units Si se establece un símbolo de unidad, Zabbix aplica un posprocesamiento al valor del item recibido y lo muestra con el sufijo de unidad especificado.
Símbolos de unidad compatibles con formato especial (y ejemplos de valor del item recibido → valor mostrado):
B - bytes (1024 → 1 KB)
Bps - bytes por segundo (1024 → 1 KBps)
s - segundos, mostrados usando hasta tres unidades de tiempo no nulas más grandes (881764 → 10d 4h 56m)
uptime - tiempo transcurrido en hh:mm:ss o N days, hh:mm:ss (881764 → 10 days, 04:56:04)
unixtime - marca de tiempo Unix, con formato yyyy.mm.dd hh:mm:ss (881764 → 1970-01-11 04:56:04 AM); para un formato correcto, el valor recibido del item debe ser Numeric (unsigned).
Para otras unidades (como Hz, W, etc.), si el valor recibido supera 1000, se divide entre 1000 y se muestra con un prefijo correspondiente (5000 → 5 KHz, 881764 → 881.76 KW).
Si el símbolo de unidad va precedido por !, la conversión de unidades y el prefijo se deshabilitan (1024 !B → 1024 B, 61 !s → 61 s).
Para más ejemplos y detalles sobre los símbolos de unidad y la conversión de unidades, consulte Sufijos de valor del item.
Update interval Recupere un nuevo valor para este item cada N segundos. El intervalo máximo de actualización permitido es de 86400 segundos (1 día).
Se admiten sufijos de tiempo, por ejemplo, 30s, 1m, 2h, 1d.
Se admiten macros de usuario.
Una sola macro debe ocupar todo el campo. No se admiten varias macros en un campo ni macros mezcladas con texto.
Nota: el intervalo de actualización solo puede establecerse en '0' si existen intervalos personalizados con un valor distinto de cero. Si se establece en '0' y existe un intervalo personalizado (flexible o programado) con un valor distinto de cero, el item se comprobará durante la duración del intervalo personalizado.
Nota que la primera comprobación del item después de que el item se haya activado o después de un cambio del intervalo de actualización puede producirse antes del valor configurado.
Los nuevos items se comprobarán en un plazo de 60 segundos desde su creación, a menos que tengan un intervalo de actualización Programado o Flexible y el Update interval esté establecido en 0.
Un item pasivo existente puede comprobarse para obtener el valor inmediatamente pulsando el botón Execute now button.
Custom intervals Puede crear reglas personalizadas para la comprobación del item:
Flexible - crea una excepción al Update interval (intervalo con una frecuencia diferente).
Scheduling - crea un programa de comprobación personalizado.
Para información detallada, consulte Custom intervals.
Se admiten sufijos de tiempo en el campo Interval, por ejemplo, 30s, 1m, 2h, 1d.
Se admiten macros de usuario.
Una sola macro debe ocupar todo el campo. No se admiten varias macros en un campo ni macros mezcladas con texto.
Timeout Establezca el tiempo de espera de comprobación del item (disponible para tipos de item compatibles). Seleccione la opción de tiempo de espera:
Global - se usa el tiempo de espera de proxy/global (mostrado en el campo Timeout atenuado).
Override - se usa un tiempo de espera personalizado (establecido en el campo Timeout; rango permitido: 1 - 600s). Se admiten sufijos de tiempo, por ejemplo, 30s, 1m, y macros de usuario.
Al hacer clic en el enlace Timeouts puede configurar los tiempos de espera de proxy o los tiempos de espera globales (si no se usa un proxy). Tenga en cuenta que el enlace Timeouts solo es visible para usuarios de tipo Super admin con permisos para las secciones de frontend Administration > General o Administration > Proxies.
History Seleccione una de las siguientes opciones:
Do not store - el historial del item no se almacena. Útil para items maestros si solo los items dependientes necesitan conservar historial.
Este ajuste no puede ser anulado por la configuración global del housekeeper settings.
Store up to - especifique la duración de conservación del historial detallado en la base de datos (de 1 hora a 25 años). Los datos más antiguos serán eliminados por el housekeeper. Se almacena en segundos.
Se admiten sufijos de tiempo, por ejemplo, 2h, 1d. Se admiten macros de usuario.
El valor de Store up to puede anularse globalmente en Administration > Housekeeping.
Si existe una configuración global de anulación, se muestra un icono de información naranja . Si coloca el cursor sobre él, se mostrará un mensaje de advertencia, por ejemplo, Overridden by global housekeeper settings (1d).
Se recomienda conservar los valores registrados durante el menor tiempo posible para reducir el tamaño del historial de valores en la base de datos. En lugar de almacenar un historial largo de valores, puede almacenar datos de tendencias durante más tiempo.
Consulte también History and trends.
Trends Seleccione una de las siguientes opciones:
Do not store - las tendencias no se almacenan.
Este ajuste no puede ser anulado por la configuración global del housekeeper settings.
Store up to - especifique la duración de conservación del historial agregado (mínimo, máximo, promedio y conteo por hora) en la base de datos (de 1 día a 25 años). Los datos más antiguos serán eliminados por el housekeeper. Se almacena en segundos.
Se admiten sufijos de tiempo, por ejemplo, 24h, 1d. Se admiten macros de usuario.
El valor de Store up to puede anularse globalmente en Administration > Housekeeping.
Si existe una configuración global de anulación, se muestra un icono de información naranja . Si coloca el cursor sobre él, se mostrará un mensaje de advertencia, por ejemplo, Overridden by global housekeeper settings (7d).
Nota: La conservación de tendencias no está disponible para datos no numéricos: character, log y text.
Consulte también History and trends.
Value mapping Aplique el mapeo de valores a este item. El mapeo de valores no cambia los valores recibidos, solo sirve para mostrar los datos.
Funciona con items Numeric(unsigned), Numeric(float) y Character.
Por ejemplo, "Windows service states".
Log time format Disponible solo para items de tipo Log. Marcadores admitidos:
y: Año (1970-2038).
M: Mes (01-12).
d: Día (01-31).
h: Hora (00-23).
m: Minuto (00-59).
s: Segundo (00-59).
Si se deja en blanco, la marca de tiempo se establecerá en 0 en tiempo Unix, lo que representa el 1 de enero de 1970.
Por ejemplo, considere la siguiente línea del archivo de registro de Zabbix agent:
" 23480:20100328:154718.045 Zabbix agent started. Zabbix 1.8.2 (revision 11211)."
Comienza con seis posiciones de caracteres para el PID, seguidas de la fecha, la hora y el resto del mensaje.
El formato de hora del registro para esta línea sería "pppppp:yyyyMMdd:hhmmss".
Tenga en cuenta que los caracteres "p" y ":" son marcadores y pueden ser cualquier carácter excepto "yMdhms".
Populates host inventory field Puede seleccionar un campo del inventario del host que el valor del item rellenará. Esto funcionará si la población automática del inventario está habilitada para el host y con items Numeric(unsigned), Numeric(float), Character y Text.
Description Introduzca una descripción del item. Se admiten macros de usuario.
Enabled Marque la casilla para habilitar el item y que se procese.
Cuando deshabilita el item, se elimina inmediatamente de la caché del historial (excepto su último valor, que se conserva para los logs).
Latest data Haga clic en el enlace para ver los datos más recientes del item.
Este enlace solo está disponible al editar un item ya existente.

Los campos específicos del tipo de item se describen en las páginas correspondientes.

Al editar un item existente a nivel de template en un host, varios campos son de solo lectura. Puede usar el enlace del encabezado del formulario e ir al nivel de template para editarlos allí, teniendo en cuenta que los cambios a nivel de template modificarán el item para todos los hosts a los que esté vinculado el template.

La pestaña Tags permite definir tags a nivel de item.

Preprocesamiento de valores de ítems

La pestaña Preprocesamiento permite definir reglas de transformación para los valores recibidos.

Prueba de item

Para realizar la prueba de un item, asegúrese de que la hora del sistema en el server y el proxy esté sincronizada. En caso de que la hora del server esté atrasada, la prueba de item puede devolver el mensaje de error "The task has been expired." Sin embargo, tener configuradas distintas zonas horarias en el server y el proxy no afectará el resultado de la prueba.

Es posible probar un item y, si está configurado correctamente, obtener un valor real como resultado. La prueba puede realizarse incluso antes de guardar un item.

La prueba está disponible para items de host y template, prototipos de item y reglas de descubrimiento de bajo nivel. La prueba no está disponible para items activos.

La prueba de item está disponible para los siguientes tipos de item pasivos:

  • Zabbix agent
  • SNMP agent (v1, v2, v3)
  • IPMI agent
  • SSH checks
  • Telnet checks
  • JMX agent
  • Simple checks (except icmpping*, vmware.* items)
  • Zabbix internal
  • Calculated items
  • External checks
  • Database monitor
  • HTTP agent
  • Script
  • Browser

Para probar un item, haga clic en el botón Test en la parte inferior del formulario de configuración del item. Tenga en cuenta que el botón Test estará deshabilitado para los items que no pueden probarse (como las comprobaciones activas, los simple checks excluidos).

El formulario de prueba de item tiene campos para los parámetros obligatorios del host (dirección del host, puerto, prueba con server/proxy (nombre del proxy)) y detalles específicos del item (como la comunidad SNMPv2 o las credenciales de seguridad SNMPv3). Estos campos son context aware:

  • Los valores se rellenan previamente cuando es posible; es decir, para items que requieren un agent, tomando la información de la interfaz de agent seleccionada del host.
  • Los valores deben rellenarse manualmente para los items de template.
  • Los valores de macros en texto plano se resuelven.
  • Los campos cuyo valor (o parte del valor) sea un secreto o una macro de Vault quedan vacíos y deben introducirse manualmente. Si algún parámetro del item contiene un valor de macro secreto, se muestra el siguiente mensaje de advertencia: "Item contains user-defined macros with secret values. Values of these macros should be entered manually."
  • Los campos se deshabilitan cuando no son necesarios en el contexto del tipo de item (por ejemplo, el campo de dirección del host y el campo de proxy se deshabilitan para los calculated items)

Para probar el item, haga clic en Get value. Si el valor se recupera correctamente, se rellenará el campo Value, moviendo el valor actual (si existe) al campo Previous value y calculando también el campo Prev. time, es decir, la diferencia de tiempo entre los dos valores (clics), además de intentar detectar una secuencia EOL y cambiar a CRLF si se detecta "\n\r" en el valor recuperado.

Haga clic en Get value and test para probar el preprocessing.

Los valores recuperados de un host y los resultados de la prueba se truncan a un tamaño máximo de 512KB cuando se envían al frontend. Si un resultado de la prueba se trunca, se muestra un icono de advertencia; sitúe el cursor sobre él para ver los detalles. Si un valor se trunca, puede fallar la validación del tipo de dato en pruebas consecutivas que comparen valores grandes (por ejemplo, JSON); en tales casos, se muestra un mensaje de error. Tenga en cuenta que los datos de más de 512KB siguen siendo procesados completamente por Zabbix server.

Si la configuración es incorrecta, se muestra un mensaje de error que describe la posible causa.

Un valor recuperado correctamente desde el host también puede utilizarse para probar preprocessing steps.

Botones del formulario

Los botones en la parte inferior del formulario permiten realizar varias operaciones.

Agregar una métrica. Este botón solo está disponible para nuevas métricas.
Actualizar las propiedades de una métrica.
Crear otra métrica basada en las propiedades de la métrica actual.
Ejecutar una comprobación para obtener un nuevo valor de la métrica inmediatamente. Solo es compatible con comprobaciones pasivas (ver más detalles).
Nota que al comprobar un valor inmediatamente, la caché de configuración no se actualiza, por lo que el valor no reflejará los cambios más recientes en la configuración de la métrica.
Probar si la configuración de la métrica es correcta obteniendo un valor.
Eliminar el historial y las tendencias de la métrica.
Eliminar la métrica.
Cancelar la edición de las propiedades de la métrica.

Límites de datos de item

Los límites de datos de item dependen del tipo de datos del item y del backend de la base de datos.

Los valores numéricos (sin signo) se almacenan tal cual. Si se recibe un valor de punto flotante, solo se almacena la parte entera (por ejemplo, 1.23 → 1).

Los valores numéricos (float) se almacenan tal cual y admiten aproximadamente de 15 a 17 dígitos de precisión, con un rango aproximado de -1.79E+308 a 1.79E+308. También se admiten valores en notación científica (por ejemplo, 1.23E+7, 1e308, 1.1E-4).

Los valores de texto se truncan antes de almacenarse para ajustarse al límite del tipo de valor de la base de datos:

Database Type of information
Character Log Text
MySQL 255 caracteres 65536 bytes 65536 bytes
PostgreSQL 255 caracteres 65536 caracteres 65536 caracteres
SQLite (only Zabbix proxy) 255 caracteres 65536 caracteres 65536 caracteres

Los valores binarios están limitados a 16MiB (16777216 bytes). Los valores que superan este límite se descartan y se muestra un error correspondiente en el frontend.

Los valores con tipo de datos JSON están limitados a 128MiB (134217728 bytes). Los valores que superan este límite se descartan y se muestra un error correspondiente en el frontend. Para MySQL/MariaDB, considere configurar particiones diarias para la tabla history_json (usada para almacenar valores JSON), ya que puede crecer rápidamente y bloquear el housekeeper durante un período prolongado. Si su caso de uso implica valores JSON grandes (1MiB o más), consulte cómo configurar su sistema para compatibilidad con valores JSON grandes.

Cuando Zabbix escribe cualquier dato de item en la base de datos, utiliza consultas INSERT y las registra (si DebugLevel está establecido en 4 o 5). Las entradas de registro grandes se truncan a 64KB.

Límite de script personalizado

La longitud disponible para scripts personalizados depende de la base de datos utilizada:

Base de datos Límite en caracteres Límite en bytes
MySQL 65535 65535
PostgreSQL 65535 sin límite
SQLite (solo proxy Zabbix) 65535 sin límite

Tiempo de espera del item

El tiempo de espera del item especifica cuánto debe esperar Zabbix antes de abortar la comprobación como fallida.

Cuando se alcanza el tiempo de espera, la comprobación se aborta incluso si la obtención de datos no ha finalizado. Si los datos se reciben parcialmente, el item pasa a estar no compatible y se registra un mensaje de error (por ejemplo, si los datos se recopilan correctamente solo para uno de varios OID en una comprobación SNMP).

Para muchos tipos de item, puede establecer tiempos de espera de item flexibles:

  • por item individual
  • por tipo de item (a nivel de proxy)
  • por tipo de item (a nivel global)

Un tiempo de espera personalizado por item individual es útil si desea especificar un tiempo de espera más largo para un item concreto, manteniendo bajos los tiempos de espera de otros items.

Precedencia de los tiempos de espera

  1. El tiempo de espera de un item individual anula cualquier otro tiempo de espera.
  2. Los tiempos de espera a nivel de proxy anulan los tiempos de espera globales.

El tiempo de espera de la configuración del server o del proxy de Zabbix no interviene en las comprobaciones para las que se han definido tiempos de espera flexibles.

Compatibilidad con tiempos de espera flexibles

Los tiempos de espera flexibles de los item son compatibles con estos tipos de item:

  • Zabbix agent (tanto comprobaciones pasivas como activas)
  • SNMP agent (excepto las comprobaciones SNMP heredadas1)
  • Simple check (excepto icmpping* y los item de VMware2)
  • SSH agent
  • Telnet agent
  • External check
  • Database monitor
  • Script
  • HTTP agent
  • Browser

    1 Para las comprobaciones SNMP heredadas (sondeo de un solo OID), se aplican los ajustes de tiempo de espera del server o del proxy.
    2 Para los item icmpping*, el valor de tiempo de espera se especifica directamente en la clave del item; además, se aplica un tiempo de espera máximo fijo posible de 600 segundos. Los item de supervisión de VMware usan su propio parámetro VMwareTimeout de la configuración del server o del proxy.

Items no soportados

Los items no soportados se informan con el estado No soportado y se vuelven a comprobar en su Intervalo de actualización estándar.

Un item se vuelve no soportado si su valor no puede recuperarse por alguna razón (por ejemplo, error de conexión, no hay pollers configurados para procesar el item). Además, los items que no reciben datos históricos permanecen en el estado No soportado. Este es el comportamiento esperado: un item pasa al estado Normal solo cuando recibe nuevos datos históricos válidos.

Al igual que los problemas, los items no soportados solo se reevalúan cuando se reciben nuevos datos, incluso si ya no hay datos históricos disponibles para ese item. En otras palabras, los items y triggers cambian su estado únicamente al recibir nuevos datos. Sin embargo, si una expresión de trigger incluye una función de fecha y hora y/o nodata(), el trigger se recalculará cada 30 segundos (consulte tiempo de cálculo de triggers para más detalles).