Los dashboards han tenido varias mejoras en esta versión de Zabbix, para hacerlos más atractivos visualmente, mas versátiles y flexibles a las necesidades del usuario.
Para alcanzar el nuevo aspecto y funcionalidad, fueron realizados los siguientes desarrollos:
Este dashboard es compartido solo con el grupo Zabbix administrators por defecto.
Recabar un nuevo valor para un ítem (métrica) en Zabbix ha sido siempre cíclico y basado en el intervalo de actualización configurado. Mientras que para muchos ítems el intervalo de actualización es corto, hay otros (incluyendo low level discovery rules) en los que el intevalo de actualización son bastante largos, en la realidad hay situaciones donde se necesita recabar un dato de forma inmediata, para darse cuenta de de cambios en los recursos descubiertos, por ejemplo.
Esto es ahora posibe en esta versión de Zabbix mediante el botón Check now disponible en dos ubicaciones:
Formulario de configuración de un item existente o discovery rule. |
|
En la lista de items o discovery rules: Selecciones las entidades y presione el botón Check now. |
Cuando se recaba un nuevo valor, el caché de configuración NO se actualiza, es por esto que puede que no se vean reflejados cambios muy recientes en la configuración. Por esta misma razón, puede que no sea posible recabar el valor de un ítem o rule que acaba de ser creado.
Para mas detalles vea: Check now
Un nuevo tipo de ítem, HTTP, permite recabar datos usando el protocolo HTTP/HTTPS. Utilizando Zabbix sender, o el protocolo Zabbix sender, también es posible el trapping.
Para mas detalles vea HTTP agent.
Nuevos templates están disponibles para monitorear hardware IBM, Dell, HP, Cisco UCS y Supermicro Aten:
Estos templates vienen por defecto en los datos para una nueva instalación. En caso de que se esté haciendo una actualización desde versiones previas, va a ser necesario que se instalen desde share.zabbix.com importándolos manualmente.
En Zabbix 3.4 se introdujeron los ítems dependientes y los prototipos de ítems dependientes, que pueden obtener su valor procesando el valor de un ítem master. Sin embargo, los ítems prototypes pueden solo depender de otro ítem protoype de la misma low-level discovery. Esta limitación ahora no existe. Un ítem prototype puede depender de, tanto un ítem prototype como de un ítem regular del mismo host.
Cuando se va a seleccionar un ítem master para el prototipo, se muestran dos botones, uno para seleccionar un ítem regular como master y otro para seleccionar un ítem prototype como master.
Se pueden utilizar las macros de las low-level discovery en los preprocesos de los ítems prototype.
Las macros de usuario y macros de usuario con contexto, pueden ser usadas en los preprocesos de los ítems regulares.
Las funciones de macro son ahora soportadas para las macros de low-level discovery, permitiendo extraer parte del valor de una macro utilizando expresiones regulares.
Por ejemplo, para extraer el nombre del cliente y el numero de interface de la siguiente macro de LLD, para, por ejemplo, tagear eventos.
Para esto, la función para macros regsub
puede usarse en el campo event tag de un trigger prototype:
Para mas información a cerca de la sintaxis de las funciones para macros, vea: Funciones para macros.
Las funciones para macro son soportadas en todos los lugares donde son soportadas las macros de low-level dicovery, exepto para el fitro de las low-level discovery.
Poner en mantenimiento un dispositivo (host), puede ser limitado a triggers/servicios con determinados tags:
Los tags pueden ser especificados cuando se configuran los períodos de mantenimiento. De hacerlo, el host estará en mantenimiento solo para los triggers/problems con los tags correspondientes, mientras que todos los otros triggers quedarán activos y funcionando como si el host no estuviera en mantenimiento.
Con esta flexibilidad agregada al estado de "en manteniemiento", algunas opciones relacionadas han sido renombradas o agregadas:
Nuevo nombre | Nombre viejo | Lugares afectados | Función |
---|---|---|---|
Show suppressed problems | Show hosts in maintenance | Opción de filtro en Monitoring → Problems | Despliega problemas que de otra manera serían suprimidos debido a que el host está en mantenimiento. |
Opción de filtro en Monitoring → Overview ('Triggers' as Type) | |||
Opciones de configuración en los dashboard widgets: Hosts con problemas Problemas Problemas por Severidad |
|||
Show suppressed problems | - | Nueva opción de filtro en Monitoring → Overview ('Data' as Type) | |
Nueva opción en la configuración de mapas | |||
Nueva opción en notificaciones globales | |||
Nueva opción de configuración en dashboard widgets: Data overview Trigger overview |
|||
Pause operations for suppressed problems | Pause operations while in maintenance | Opción de configuración en las operaciones de las action | Demorar ejecución de operaciones hasta que el mantenimiento termine. |
Problem is suppressed | Maintenance status | Condiciones de las action | Yes - se ejecuta la acción si el problema es suprimido No - no se ejecuta la acción si el problema es suprimido |
Un solo sign-in al frontend usando soluciones como Kerberos, NTLM entre otros, es ahora posible agregando nuevas opciones de autenticación.
La atenticación HTTP tiene ahora un tab dedicado en el formulario de autenticación, donde se puede elegir si enviar a usuario no autenticados a una página de Zabbix login o a una página de HTTP login, especificar si se diferencia entre mayúsculas y minúsculas y remover el nombre del dominio de las credenciales del usuario enviado.
La diferenciación entre mayṕusculas y minúsculas también fue agregada a las opciones en la página de autenticación mediante LDAP.
Vea también: Autenticación
Con respecto a autenticación, se ha agregado una opción de autenticación mediante LDAP en la configuración de grupos de usuarios.
Previamente, la auto registración era ejecutada una solo vez, lo que no ofrecía demaciada flexibilidad para los hosts que sufrieran cambios. En la nueva versión, la autregistración se ejecuta nuevamente en caso de que la host metadata (parámetros HostMetadata, HostMetadataItem en el archivo de configuración configuración del agente) cambie.
Esto permite adaptar el monitoreo basado en la naturaleza de los cambios en el dispositivo (host). Para ofrecer mas flexibilidad en la auto registración, las acciones soportan operations adicionales como:
Se agregó sporte para MySQL 8.0.
Para poder escalar correctamente los datos históricos en Epasticsearch, se necesitan múltiples índices por tipo de dato. Ahora es posible configurar estos índices basados en fechas. Para más detalles, veaconfiguración de Elasticsearch.
Es posible configurar coonexiones mas seguras tanto para proxies activos como pasivos:
La severidad de un problema, hasta ahora, siempre dependía de la severidad del trigger y no podía ser cambiada. Ahora la severidad del problema está separada en la tabla de eventos y puede ser alterada. El valor primigenio va a ser determinado por la severidad del trigger y va a posible alterarlo desde la pantalla de actualización de problemas.
La pantalla de actualización de problemas es la evolución de la pantalla de reconocimiento (acknowledgement) de problemas de versiones anteriores.
Además de ser renombrada, se le han efectuado los siguientes cambios:
Un nuevo widget para los dashboards está disponible, ofreciendo una forma moderna y vesátil de visualizar los datos recabados por Zabbix. Utiliza la técnica vectorial para dibujar la imagen y sirve como plataforma para muchas nuevas funciones de visualización, que no estaban disponibles con el enfoque existente.
Para mas información mire dashboard widgets.
El widget para gráficas anteriormente soportado puede seguir siendo utilizado, ahora ha sido renombrado a Graph (classic).
El selector de período de tiempo ha sido rediseñado con el objetivo de proveer la selección de intervalos frecuentes mediante un solo clik.
También es posible incrementar el período un 50% en ambas direcciones, mover el período hacia adelante o atrás y seleccionar un afecha específica.
Las siguientes páginas se benefician del rediseño:
Vea también: Selector de períodos de tiempo
En el nuevo modo Kiosk, solo el contenido de la página es desplegada. Por ejemplo, en los dashboards, solo los widgets son desplegados
|<| |<| |-| |<|
Se accede al modo Kiosk clickeando el botón cuando se está en el modo pantalla completa. El modo Kiosk se soporta en todas las páginas que soporten el modo pantalla completa.
Una vista compacta ha sido agregada a Monitoring → Problems maximizando la cantidad de problemas que se pueden ver al mismo tiempo:
Para activar la vista compacta, seleccione la opción en los filtros.
Hay dos nuevas opciones en los filtros de problemas:
Dado que Monitoring → Problems se convirtió en la sección a visitar cuando se necesitan ver los problemas actuales, se decidió sacar la sección Triggers del menú de monitoreo.
El estado de los triggers puede ser visto en Configuration → Hosts → Triggers (en la nueva columna Value), y la descripción de los triggers puede ser accedida desde el menú de contexto que se abre en un popup.
{INVENTORY.*} macros se pueden utilizar para taggear eventos generados por triggers y correlacionarlos.
La expansión de las macros de inventario hace posible correlacionar eventos, vale decir, su problema y solución, por ejemplo por datacenter, administrador responsable, número de rack etc, por lo que se ganan en automatización.
Cuando se especifican determinadas unidades para los valores de los items, pueden resultar en un prefijo multiplicador, por ejemplo, un valor de 2048 con una unidad 'B' va a ser desplegado como '2KB'. La lista negra para impedir esa conversión en versiones previas estaba fija y la integraban ms
, rpm
, RPM
, %
.
En la nueva versión, cualquier unidad puede utilizarse sin que necesariamente se agregue el prefijo multiplicador usando como prefijo un !
, por ejemplo !B
. Los siguiente ejemplos van a dejar mas claro como utilizarlos.
1024 !B → 1024 B
1024 B → 1 KB
61 !s → 61 s
61 s → 1m 1s
0 !uptime → 0 uptime
0 uptime → 00:00:00
0 !! → 0 !
0 ! → 0
Aún así, la lista negra de unidades todavía funciona, no ha sido descartada, para impedir la conversión para estas unidades se debe utilizar !ms
, !rpm
, !RPM
, !%
Pueden especificarse multiples direcciones de e-mails para un único user media.
Al especificarse de esta manera, un único e-mail va a ser enviado con todos los destinatarios especificado.
Exportación en tiempo real de los eventos que general los triggers, los valores de los ítems y sus tendencias, es realizada en formato JSON delimitada por new-lines. Para esto se especifica el nuevo parámetro ExportDir
en el archivo de configuración del servidor. Se agregó el parámetro ExportFileSize
para cotrolar el tamaño máximo de cada archivo en que se esportan los datos.
Vea también: Exportación en tiempo real de eventos, valores y tendencias
Otorgar permisos utilizando grupos de usuarios, ha sido complementado con un nuevo tab, Tab filter.Ahora los permisos se pueden basar en los tags y sus valores, permitiendo visibilidad sobre determinados problemas.
Este cambio se aplica en el formulario "User groups" en Administration → User groups.
Todas las comunicaciones entre el servidor Zabbix y todos sus proxies son incondicionalmente comprimidas. La compresión baja el consumo de ancho de banda y mejora la velocidad de transferencia de datos.
Al formulario Administration → Proxies se le agregó una columna "Compression".
La librería Zlib es necesaria para esta funcionalidad.
El mensaje ha sido mejorado para incluir mas detalles sobre el problema. El mensaje de ahora en adelante contiene:
[MySQL|PostgreSQL|Oracle|IBM DB2] database <DB Name> [on <DB Host>:<DB Port>] is not available: <error message depending on the type of DBMS (database)>
<DB Host> no se agrega al mensaje si esta vacío y <DB Port> tampoco si tiene el valor por defecto ("0").
El uso de "not" como palabra reservada en el campo Custom expression de un filtro de una Discovery rule es admitido.
Este cambio aplica a el formulario Event correlation rules en Configuration → Event correlation, al formulario Actions en Configuration → Actions y al fitro de Discovery rule.
Zabbix Java gateway ahora puede trabajar con MBeans personalizados retornando tipos de datos no primitivos, que sobreescribe el método toString().
Al completar un script de cheqeo externo, los argumentos se rodean con comillas simples '
en lugar de comillad dobles "
. Este cambio permite a Zabbix aceptar mas simbolos en un parámetro de un external check. Por ejemplo, el signo $
ya no es ignorado.
El campo IPMI sensor de los items IPMI se puede especificar el el nombre completo para buscar, especificando un prefijo name:
.
El proceso de las functions de los triggers basados en tiempo, como nodata
(), date()
, dayofmonth()
, dayofweek()
, time()
y now()
han sido movidas de los timer processes a los history syncers.
Anteriormente, todos los triggers basados en tiempo eran recalculados al mismo tiempo, creando un pico de carga cada 30 segundos, ahora la carga del cálculo es distribuida igualmente dentro de esos 30 segundos.
La salida del history syncer y timer processes ha sido actualizado en consecuencia
Ahora:
zabbix_server: history syncer #3 [processed 0 values, 0 triggers in 0.000005 sec, idle 1 sec]
zabbix_server: timer #1 [updated 0 hosts, suppressed 0 events in 0.000472 sec, idle 59 sec]
Antes:
zabbix_server: history syncer #4 [synced 35 items in 0.166198 sec, idle 5 sec]
zabbix_server: timer #1 [processed 3 triggers, 0 events in 0.007867 sec, 0 maint.periods in 0.005677 sec, idle 30 sec]
Los campos obligatorios estan marcados con un asterisco rojo en todos los formularios del frontend
El selector de fecha ha sido rediseñado para permitir la seleccion de fecha mediante el teclado.
Es posible navegar entre los bloques usando la tecla Tab y Shift+Tab. Las teclas de movimiento permiten seleccionar el valor deseado. Presionando la tecla Enter, o clicqueando en el valor, activa la opción seleccionada.
El selector de hora fué retirado, ya que ahora es parte del rediseño del selector de hora. El botón Done también fué retirado, debido a que la selección se activa inmediatamente. El botón Now también fué retirado
El selector de color ha sido rediselado y ofrece una paleta mas grande de colores para elegir:
En Zabbix 4.0 | |
Antes de Zabbix 4.0 |
Todas las Popups que eran abiertas en nuevas ventanas, ahora son dialogos superpuestos.
Además se agregó el botón Cancel.
Se ha añadido mas flexibilidad en el fitrado de problemas pudiédose usar el nombre y valor de tags:
Estos cambios se aplican en el fitro de Monitoring → Problems y en el widget Problems.
Cambios similares fueron hechos en el fitro //Configuration → Hosts→ Triggers// excluyendo los campos Show tags, Tag name y Tag display priority.
Ahora se pueden filtrar los hosts dependiendo si son monitoreados por el Zabbix server o por Zabbix Proxy, pusiéndose especificar cuál es el Proxy
La opción Any es la seleccionada por defecto, y el campo Proxy no es visible. Cuando se selecciona Proxy, aparece un nuevo campo, donde se puede especificar el Proxy, el que se va a autocompletar a medida que se escriba.
Se pueden filtrar ítmes dependiendo si son:
El valor del trigger (OK/Problem) se despliega en la lista de configuracion de triggers en la nueva columnas Value:
Los operadores de condiciones han sido renombrados y unificados en todo el frontend:
Nuevo | Viejo |
---|---|
Equals | =, Equal, Exactly |
Does not equal | <> |
Is greater than or equals | >= |
Is less than or equals | <= |
Contains | Like |
Does not contain | Not like |
Los siguientes elementos han sido renombrado:
Nuevo | Viejo |
---|---|
Problems by severity | System status |
Problem hosts | Host status |
System information | Status of Zabbix |
Se pueden agregar multiples items en la configuración de un Plain text widget.
Se agrega la opción Items location para elegir como se va a desplegar la información en el widget Items location option has also been added to choose the way how information in the widget may be displayed:
|<| |<| |-| |<|
Se agregaron los // checkbox Use custom event status colors//. Desde ahoralos colores de los eventos acknowledged y unacknowledged son automáticamente ajustados de acuerdo al color theme elegido. Se se requiere, los colores pueden ser personalizados.
Este cambio aplica a el formulario "Trigger displaying options" en Administration → General.
Nuevos checkbox Remove host groups y campos que se autocompletan. Desde ahora los usuarios pueden sacar al host de determinados host groups. En el caso de que el host este en los grupos seleccionados, va a ser quitado de estos. Si el host no esta en esos grupos, no va a hacerse nada. En caso de que los mismos host groups sean reemplazados y borrados a la vez, los hosts son dejados sin grupos.
Los bloques de las severidades de los triggers estan ahora con el mismo color que el trigger y los inactivos tienen el mismo color que el color de fondo de las tablas.
Este cambio aplica a el tab "Media" en el formulario Administration → Users → User properties y en el formulario User profile configuration.
|<| |<| |-|
Desde ahora algunos de los formularios son mas amigables y compactos.
Este cambio aplica a las siguientes forumularios:
Cuando se agrega un nuevo widget a un dashboard, o cuando se edita uno, se abre un formulario con los valores por defecto en todos los campos, dependiendo del tipo de widget.
El despliegue de gráficas en widgets fue mejorado. Una gráfica ahora ocupa el máximo espacio posible, permitiendo mostrar mas información.
Un nuevo botón Support redirecciona a la página oficial de Zabbix.
Muchas mejoras se introdujeron al frontend de Zabbix para hacerlo usable con tecnologías de asistencia y en general mas amigable para personas con problemas visuales.
Se agregaron dos temas de alto contraste al frontend de Zabbix:
|<| |<| |-| |<|
En este desarrollo, los colores por defecto de los gráficos en los dark themes fueron actulizados.
Se ha agregado una etiqueta oculta "aria-label" a los mapas que permite leer la información del mapa con un lector de pantalla. Tanto en la descripción general del mapa como en la descripción individual del elemento, en el siguiente formato:
<Map name>, <* of * items in problem state>, <* problems in total>.
<Element type>, Status <Element status>, <Element name>, <Problem description>.
<Element type>, Status <Element status>, <Element name>, <* problems>.
<Element type>, Status <Element status>, <Element name>.
Por ejemplo, esta descripción esta disponible:
'Local network, 1 of 6 elements in problem state, 1 problem in total. Host, Status problem, My host, Free disk space is less than 20% on volume \/. Host group, Status ok, Virtual servers. Host, Status ok, Server 1. Host, Status ok, Server 2. Host, Status ok, Server 3. Host, Status ok, Server 4. '
en el siguiente mapa:
Se agregaron iconos y color al inicio de las notificaciones del frontend para indicar si el mensaje es acerca de éxito, falla o advertencia.
|<| |<| |<| |-| |<| |<|
Estos cambios permiten que el mensaje esté en un fondo blanco, mejorado la legibilidad general.
Se quitó el fondo verde en:
|<| |<| |-| |<|
Discovery status details in Monitoring → Discovery are now displayed as text inside the cell, instead of a pop-up that's visible upon mouse over.
In Zabbix 4.0.0 | Before Zabbix 4.0.0 |
In addition, green colouring is removed from cells with uptime, while red remains in the cells with downtime.
The session cookie name that Zabbix frontend uses for internal authentication is now configurable in ZBX_SESSION_NAME of the frontend definitions.
Session tokens have been added to incoming proxy/agent data along with virtual IDs that are assigned to incoming values. The value ID is a simple ascending counter, unique within one data session (identified by the session token). This ID is used to discard duplicate values that might be sent in poor connectivity environments. For more details on the protocols, see:
Data without session token will be accepted without validation for duplicate values, ensuring backwards compatibility.
Zabbix server performance has been improved by replacing semaphores with pthread mutexes and read-write locks.
Problem and event names previously were generated on the fly in the frontend and on server side based on the respective trigger name with all the macros expanded. That lead to severe performance issues and also made it impossible to see historical information about problems if the trigger name had changed.
Now problem and event names are stored directly in the 'events' and 'problem' tables at the moment when an event is generated for a problem or recovery. Zabbix frontend can search and query the respective tables directly. This change leads to a better separation of triggers and problems, improves performance, especially that of the frontend and maintains historical problem names. However, the size of problem/events tables is now larger.
Note that for internal events the name contains an error message why an object changed its state; upon recovery no name is used. For discovery and auto-registration events no name is used.
A new {EVENT.NAME} macro is supported, returning the event/problem name with macros resolved.
See also the upgrade notes for:
From now on user.checkAuthentication method contains additional parameter "extend".
From now on user.checkAuthentication method contains additional parameter "extend".