6 Configuración de monitores: parte común

Cada fichero con extensión .conf del directorio de monitores (/etc/databbix/dbs por defecto) define un monitor. Los ficheros con otra extensión se ignoran, así que para desactivar un monitor basta con renombrar su fichero (por ejemplo, a mydb.conf.off).

6.1 Estructura del fichero#

Un fichero de monitor tiene dos tipos de secciones:

  • Secciones comunes, iguales para todos los motores: [General], [Zabbix], [Data] y [Log]. Se describen en este capítulo.

  • Una sección del motor, con los datos de conexión con la fuente de datos. Su nombre coincide con el del motor elegido en General.Engine. Se describe en el capítulo de cada motor.

Sección Ámbito Contenido
[General] común Nombre del host, motor, ficheros de consultas, variables de entorno, reintentos y caché.
[Zabbix] común Servidor Zabbix y puerto pasivo.
[Data] común Módulos de consultas y tolerancia a errores.
[Log] común Log propio del monitor.
[Database] Database Driver, cadena de conexión y credenciales (capítulo 9).
[Webservice] Webservice URL base, autenticación y TLS (capítulo 10).
[MQTT] MQTT Broker, credenciales y suscripción (capítulo 11).

Esqueleto de un fichero de monitor:

# ---- Secciones comunes -------------------------------------------
[General]
Name = MIHOST
Engine = Database            # Database | Webservice | MQTT

[Zabbix]
Server = zabbix.empresa.com
Port = 10051

[Data]
Module = ...

[Log]
LogLevel = 4

# ---- Sección del motor (solo una, la de General.Engine) ----------
[Database]
...

6.2 Sección [General]#

Parámetro Defecto Descripción
Name obligatorio Nombre del host en Zabbix. Tiene que coincidir exactamente con el campo Host name del host en Zabbix.
Engine Database Motor: Database, Webservice o MQTT. Determina qué sección de conexión se lee y qué XML se admiten.
QueryFile el global Fichero(s) XML de consultas. Si aparece, sustituye por completo a la lista global. Se puede repetir.
Environment — Variables Nombre=Valor. Tienen prioridad sobre las de databbix.conf y sobre los valores por defecto del XML. Se puede repetir.
RetryOnError 60 Segundos entre reintentos tras un error de conexión con la fuente o con Zabbix.
MaxCache 10 Vida máxima en segundos de un resultado en caché.

6.3 Sección [Zabbix]#

Parámetro Defecto Descripción
Server obligatorio Nombre DNS o IP del servidor (o proxy) Zabbix.
Port obligatorio Puerto del servidor, normalmente 10051.
Refresh 300 Segundos entre peticiones de la lista de ítems activos.
MaxItemsPerPacket 100 Número máximo de valores por envío.
PassivePort 0 Puerto TCP para comprobaciones pasivas. Con 0 no se abre ningún puerto. Si se usa, debe ser distinto en cada monitor.

El puerto pasivo responde a los ítems agent.ping, agent.version, agent.hostname y tez.ora.connstatus (1 si la conexión con la fuente está activa, 0 si no). Para cualquier otro ítem devuelve ZBX_NOTSUPPORTED. El puerto pasivo sirve para comprobar desde Zabbix que el monitor está vivo.

6.4 Sección [Data]#

Parámetro Defecto Descripción
Module obligatorio Módulo de consultas que usa este monitor (DB, Instance, PG, JDE…). Se puede repetir.
MaxErrors 5 Número máximo de ejecuciones fallidas consecutivas. Al superarlo, el monitor se detiene. 0 desactiva el límite.
ConnLost OnDefault CtxError yes Solo motor Database: si falla el cambio al contexto por defecto, da la conexión por perdida y reconecta (sección 9.5).

Nota.  En configuraciones antiguas del motor Database, Module y MaxErrors aparecen en la sección [Database]. Esa forma sigue siendo válida, pero si existen en [Data], prevalecen los de [Data].

6.5 Sección [Log]#

Admite los mismos parámetros que la sección [Log] de databbix.conf (sección 5.2.2). Si no se indican, hereda los valores globales. El fichero de log por defecto es <Name>.log, dentro de LogPath.

6.6 Caracteres especiales#

El carácter # inicia un comentario. Si un valor necesita contener # (por ejemplo, un usuario común de Oracle multitenant o el comodín de una suscripción MQTT), se escribe con la secuencia \043:

# Usuario c##zabbix
UserName = c\043\043zabbix

Seguridad.  Los ficheros de monitor contienen contraseñas en claro. Deben pertenecer a root:databbix con permisos 0640, igual que los instala el RPM: el demonio puede leerlos, pero no modificarlos. El usuario databbix no debe poder escribir en su propia configuración (ficheros .conf, XML de consultas ni sus directorios), porque los XML pueden contener código que el demonio ejecuta.