Los complementos brindan una opci¨®n para ampliar las capacidades de monitoreo de Áú»¢¶Ä²©. Los complementos est¨¢n escritos en lenguaje de programaci¨®n Go y son compatibles ¨²nicamente con el agente Áú»¢¶Ä²© 2. Los complementos proporcionan una alternativa a m¨®dulos cargables (escrito en C), y otros m¨¦todos para ampliar la funcionalidad de Áú»¢¶Ä²©.
Las siguientes caracter¨ªsticas son espec¨ªficas del agente 2 y sus complementos:
Desde Áú»¢¶Ä²© 6.0, los complementos no tienen que integrarse directamente en el agente 2 y se pueden agregar como complementos cargables, facilitando as¨ª el proceso de creaci¨®n de complementos adicionales para recopilar nuevas m¨¦tricas de monitoreo.
Esta p¨¢gina enumera los complementos nativos y cargables de Áú»¢¶Ä²© y describe los principios de configuraci¨®n de los complementos desde la perspectiva del usuario.
Para obtener instrucciones sobre c¨®mo escribir sus propios complementos, consulte el Centro de desarrolladores y el .
Para obtener detalles sobre el proceso de comunicaci¨®n entre el agente 2 de Áú»¢¶Ä²© y un complemento cargable, as¨ª como el proceso de recopilaci¨®n de m¨¦tricas, consulte el diagrama de conexi¨®n.
Esta secci¨®n proporciona principios y mejores pr¨¢cticas de configuraci¨®n de complementos comunes.
Todos los complementos se configuran usando el par¨¢metro Plugins.*, que puede ser parte del archivo de configuraci¨®n del agente Áú»¢¶Ä²© 2 o el archivo de configuraci¨®n. del propio complemento Si un complemento utiliza un archivo de configuraci¨®n separado, la ruta a este archivo debe especificarse en el par¨¢metro Include del archivo de configuraci¨®n del agente 2 de Áú»¢¶Ä²©.
Un par¨¢metro de complemento t¨ªpico tiene la siguiente estructura:
Plugins.<PluginName>.<Parameter>=<Value>
Adem¨¢s, existen dos grupos espec¨ªficos de par¨¢metros:
Plugins.<PluginName>.Default.<Parameter>=<Value> utilizado para definir valores de par¨¢metros predeterminados.
Plugins.<PluginName>.<SessionName>.<Parameter>=<Value> se utiliza para definir conjuntos separados de par¨¢metros para diferentes objetivos de monitoreo a trav¨¦s de [sesiones con nombre] (#named-sessions).
Todos los nombres de par¨¢metros deben cumplir los siguientes requisitos:
Por ejemplo, para realizar comprobaciones activas que no tienen ±Ê°ù´Ç²µ°ù²¹³¾²¹³¦¾±¨®²Ô intervalo de actualizaci¨®n inmediatamente despu¨¦s de que el agente se reinicie solo para el complemento Uptime, establezca Plugins.Uptime.System.ForceActiveChecksOnStart=1
en el archivo de configuraci¨®n. De manera similar, para establecer un l¨ªmite personalizado para comprobaciones simult¨¢neas para el complemento de CPU, establezca Plugins.CPU.System.Capacity=N
en el archivo de configuraci¨®n.
Puede establecer valores predeterminados para los par¨¢metros relacionados con la conexi¨®n (URI, nombre de usuario, contrase?a, etc.) en el archivo de configuraci¨®n con el formato:
Complementos.<Nombre del complemento>.Predeterminado.<Par¨¢metro>=<Valor>
Por ejemplo, Plugins.Mysql.Default.Username=zabbix, Plugins.MongoDB.Default.Uri=tcp://127.0.0.1:27017, etc.
Si no se proporciona un valor para dicho par¨¢metro en una clave de m¨¦trica o en los par¨¢metros de sesi¨®n nombrada, el complemento utilizar¨¢ el valor predeterminado. Si un par¨¢metro predeterminado tampoco est¨¢ definido, se utilizar¨¢n valores predeterminados codificados.
Si una clave de m¨¦trica no tiene ning¨²n par¨¢metro, el agente 2 de Áú»¢¶Ä²© intentar¨¢ recopilar la m¨¦trica utilizando los valores definidos en la secci¨®n de par¨¢metros predeterminados.
Las sesiones con nombre representan un nivel adicional de par¨¢metros de complemento y se pueden usar para especificar conjuntos separados de par¨¢metros de autenticaci¨®n para cada una de las instancias que se monitorean. Cada par¨¢metro de sesi¨®n con nombre debe tener la siguiente estructura:
Complementos.<Nombre del complemento>.Sesiones.<Nombre de la sesi¨®n>.<Par¨¢metro>=<Valor>
Se puede utilizar un nombre de sesi¨®n como par¨¢metro clave de m¨¦trica connString en lugar de especificar un URI, un nombre de usuario y/o una contrase?a por separado.
En las claves de m¨¦tricas, el primer par¨¢metro puede ser un connString o un URI. Si el primer par¨¢metro clave no coincide con ning¨²n nombre de sesi¨®n, se tratar¨¢ como un URI. Tenga en cuenta que no se admite el paso de credenciales URI incrustadas en la clave de la m¨¦trica; en su lugar, utilice par¨¢metros de sesi¨®n con nombre.
La lista de par¨¢metros de sesi¨®n con nombre disponibles depende del complemento.
Es posible anular los par¨¢metros de la sesi¨®n especificando nuevos valores en los par¨¢metros clave de la m¨¦trica (consulte el ejemplo).
Si no se define un par¨¢metro para la sesi¨®n nombrada, el agente 2 de Áú»¢¶Ä²© utilizar¨¢ el valor definido en el par¨¢metro del complemento predeterminado.
Los complementos del agente 2 Áú»¢¶Ä²© buscan valores de par¨¢metros relacionados con la conexi¨®n en el siguiente orden:
Monitoreo de dos instancias ¡°MySQL1¡± y ¡°MySQL2¡±.
Par¨¢metros de configuraci¨®n:
Plugins.Mysql.Sessions.MySQL1.Uri=tcp://127.0.0.1:3306
Plugins.Mysql.Sessions.MySQL1.User=mysql1_user
Plugins.Mysql.Sessions.MySQL1.Password=³¦´Ç²Ô³Ù°ù²¹²õ±ð?²¹³å¨²²Ô¾±³¦²¹
Plugins.Mysql.Sessions.MySQL2.Uri=tcp://192.0.2.0:3306
Plugins.Mysql.Sessions.MySQL2.User=mysql2_user
Plugins.Mysql.Sessions.MySQL2.Password=contrase?a_diferente
Como resultado de esta configuraci¨®n, cada nombre de sesi¨®n puede usarse como una cadena de conexi¨®n en una clave de m¨¦trica, por ejemplo, mysql.ping[MySQL1]
o mysql .ping[MySQL2]
.
Proporcionar algunos de los par¨¢metros en la clave de la m¨¦trica.
Par¨¢metros de configuraci¨®n:
Plugins.PostgreSQL.Sessions.Session1.Uri=tcp://192.0.2.234:5432
Plugins.PostgreSQL.Sessions.Session1.User=antiguo_nombre de usuario
Plugins.PostgreSQL.Sessions.Session1.Password=³¦´Ç²Ô³Ù°ù²¹²õ±ð?²¹³å²õ±ð²õ¾±¨®²Ô
Clave de m¨¦trica: pgsql.ping[session1,nuevo_nombre_de_usuario,,postgres]
Como resultado de esta configuraci¨®n, el agente se conectar¨¢ a PostgreSQL utilizando los siguientes par¨¢metros:
Recopilar una m¨¦trica utilizando los par¨¢metros de configuraci¨®n predeterminados.
Par¨¢metros de configuraci¨®n:
Plugins.PostgreSQL.Default.Uri=tcp://192.0.2.234:5432
Plugins.PostgreSQL.Default.User=zabbix
Plugins.PostgreSQL.Default.Password=contrase?a
Clave de m¨¦trica: pgsql.ping[,,,postgres]
Como resultado de esta configuraci¨®n, el agente se conectar¨¢ a PostgreSQL usando los par¨¢metros:
Algunos complementos admiten la recopilaci¨®n de m¨¦tricas de m¨²ltiples instancias simult¨¢neamente. Tanto las instancias locales como las remotas pueden ser monitoreadas. Se admiten conexiones de TCP y de socket Unix.
Se recomienda configurar complementos para mantener las conexiones a las instancias en estado abierto. Los beneficios son la reducci¨®n de la congesti¨®n de la red, la latencia, y uso de CPU y memoria debido a la menor cantidad de conexiones. La biblioteca del cliente se encarga de esto.
Per¨ªodo de tiempo durante el cual deben permanecer las conexiones no utilizadas abiertas puede ser determinado por el par¨¢metro Plugins.<PluginName>.KeepAlive.
Ejemplo: Plugins.Memcached.KeepAlive
Todas las m¨¦tricas admitidas por el Agente 2 Áú»¢¶Ä²© se recopilan mediante complementos.
Los siguientes complementos para el agente Áú»¢¶Ä²© 2 est¨¢n disponibles de manera inmediata. Haga clic en el nombre del complemento para ir al repositorio de complementos con informaci¨®n adicional.
Nombre del complemento | ¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨®²Ô | Claves de m¨¦tricas compatibles | Comentarios |
---|---|---|---|
Agente | ²Ñ¨¦³Ù°ù¾±³¦²¹s del agente Áú»¢¶Ä²© que se est¨¢ utilizando. | agent.hostname, agent.ping, agent.version | Las claves compatibles tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²©. |
Monitoreo de Ceph. | ceph.df.details, ceph.osd.stats, ceph.osd.discovery, ceph.osd.dump, ceph.ping, ceph.pool.discovery, ceph.status |
||
Monitoreo de CPU del sistema (n¨²mero de CPU/n¨²cleos de CPU, CPU descubiertas, porcentaje de utilizaci¨®n). | system.cpu.discovery, system.cpu.num, system.cpu.util | Las claves compatibles tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²©. | |
Supervisi¨®n de contenedores Docker. | docker.container_info, docker.container_stats, docker.containers, docker.containers.discovery, docker.data_usage, docker.images, docker.images.discovery, docker.info, docker.ping |
Consulte tambi¨¦n: Par¨¢metros de configuraci¨®n |
|
Archivo | Recopilaci¨®n de m¨¦tricas de archivo. | vfs.file.cksum, vfs.file.contents, vfs.file.exists, vfs.file.md5sum, vfs.file.regexp, vfs.file.regmatch, vfs.file.size, vfs.file.time |
Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²© keys. |
Monitoreo del kernel. | kernel.maxfiles, kernel.maxproc | Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²©. | |
Supervisi¨®n de archivos de registro. | log, log.count, logrt, logrt.count | Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²©. Consulte tambi¨¦n: Par¨¢metros de configuraci¨®n del complemento (Unix/Windows) |
|
Supervisi¨®n del servidor Memcached. | memcached.ping, memcached.stats | ||
Lee datos Modbus. | modbus.get | Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²© keys. | |
Recibe valores publicados de temas MQTT. | mqtt.get | Para configurar una conexi¨®n cifrada con el agente MQTT, especifique los par¨¢metros TLS en el archivo de configuraci¨®n del agente como par¨¢metros named session o default. Actualmente, los par¨¢metros TLS no se pueden pasar como par¨¢metros de clave de m¨¦tricas. | |
Monitoreo de MySQL y sus bifurcaciones. | mysql.custom.query, mysql.db.discovery, mysql.db.size, mysql.get_status_variables, mysql.ping, mysql.replication.discovery, mysql.replication.get_slave_status, mysql.version |
Para configurar una conexi¨®n cifrada a la base de datos, especifique los par¨¢metros TLS en el archivo de configuraci¨®n del agente como par¨¢metros named session o default. Actualmente, los par¨¢metros TLS no se pueden pasar como par¨¢metros de clave de m¨¦trica. | |
Monitoreo de interfaces de red. | net.if.collisions, net.if.discovery, net.if.in, net.if.out, net.if.total | Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²©. | |
Monitoreo de bases de datos de Oracle. | oracle.diskgroups.stats, oracle.diskgroups.discovery, oracle.archive.info, oracle.archive.discovery, oracle.cdb.info, oracle.custom.query, oracle.datafiles.stats, oracle.db.discovery, oracle.fra.stats, oracle.instance.info, oracle.pdb.info, oracle.pdb.discovery, oracle.pga.stats, oracle.ping, oracle.proc.stats, oracle.redolog.info, oracle.sga.stats, oracle.sessions.stats, oracle.sys.metrics, oracle.sys.params, oracle.ts.stats, oracle.ts.discovery, oracle.user.info, oracle.version |
Instale antes de usar el complemento. | |
Porcentaje de utilizaci¨®n de CPU del proceso. | proc.cpu.util | La clave compatible tiene los mismos par¨¢metros que la clave del agente Áú»¢¶Ä²© key. | |
Monitoreo del servidor Redis. | redis.config, redis.info, redis.ping, redis.slowlog.count | ||
Monitoreo S.M.A.R.T. | smart.attribute.discovery, smart.disk.discovery, smart.disk.get | La versi¨®n m¨ªnima requerida de smartctl es 7.1. Los derechos de acceso sudo/root a smartctl son necesarios para que el usuario ejecute el agente Áú»¢¶Ä²© 2. El complemento utiliza solo los siguientes comandos: /usr/sbin/smartctl -a * /usr/sbin/smartctl --scan * /usr/sbin/smartctl -j -V Las claves compatibles se pueden usar con el agente Áú»¢¶Ä²© 2 solo en Linux/Windows, tanto como verificaci¨®n pasiva como activa. Consulte tambi¨¦n: Par¨¢metros de configuraci¨®n |
|
Lista de paquetes instalados. | system.sw.packages, system.sw.packages.get | Las claves admitidas tienen los mismos par¨¢metros que la clave del agente Áú»¢¶Ä²© key. | |
Tama?o del espacio de intercambio en bytes/porcentaje. | system.swap.size | La clave compatible tiene los mismos par¨¢metros que la clave del agente Áú»¢¶Ä²© key. | |
SystemRun | Ejecuta el comando especificado. | system.run | La clave compatible tiene los mismos par¨¢metros que la clave del agente Áú»¢¶Ä²© key. Consulte tambi¨¦n: Par¨¢metros de configuraci¨®n del complemento (Unix/Windows) |
Systemd | Supervisi¨®n de los servicios systemd. | systemd.unit.discovery, systemd.unit.get, systemd.unit.info | |
Comprobaci¨®n de disponibilidad de conexi¨®n TCP. | net.tcp.port | La clave compatible tiene los mismos par¨¢metros que la clave del agente Áú»¢¶Ä²© key. | |
Supervisi¨®n de la disponibilidad y el rendimiento de los servicios UDP. | net.udp.service, net.udp.service.perf | Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²©. | |
Recopilaci¨®n de m¨¦tricas de tiempo de actividad del sistema. | system.uptime | La clave compatible tiene los mismos par¨¢metros que la clave del agente Áú»¢¶Ä²© key. | |
Recopilaci¨®n de m¨¦tricas de VFS. | vfs.dev.discovery, vfs.dev.read, vfs.dev.write | Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²©. | |
Supervisi¨®n de certificados de sitios web TLS/SSL. | web.certificate.get | ||
Monitoreo de p¨¢ginas web. | web.page.get, web.page.perf, web.page.regexp | Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²©. | |
Recopilaci¨®n de m¨¦tricas asincr¨®nicas. | net.tcp.listen, net.udp.listen, sensor, system.boottime, system.cpu.intr, system.cpu.load, system.cpu.switches, system.hw.cpu, system.hw.macaddr, system.localtime, system.sw.os, system.swap.in, system.swap.out, vfs.fs.discovery |
Las claves admitidas tienen los mismos par¨¢metros que las claves del agente Áú»¢¶Ä²© keys. | |
²Ñ¨¦³Ù°ù¾±³¦²¹s internas del servidor o proxy de Áú»¢¶Ä²© o cantidad de m¨¦tricas retrasados ??en una cola. | zabbix.stats | Las claves admitidas tienen los mismos par¨¢metros que las claves del agente de Áú»¢¶Ä²©. | |
Recopilaci¨®n de m¨¦tricas sincr¨®nicas. | net.dns, net.dns.record, net.tcp.service, net.tcp.service.perf, proc.mem, proc.num, system.hw.chassis, system.hw.devices, system.sw.packages, system.users.num, vfs.dir.count, vfs.dir.size, vfs.fs.get, vfs.fs.inode, vfs.fs.size, vm.memory.size. |
Las claves admitidas tienen los mismos par¨¢metros que el agente Áú»¢¶Ä²© claves. |
Complementos cargables, cuando se inician con:
- -V --version - imprime la versi¨®n del complemento y la informaci¨®n de licencia;
- -h --help - imprime informaci¨®n de ayuda.
Haga clic en el nombre del complemento para ir al repositorio de complementos con informaci¨®n adicional.
Nombre del complemento | ¶Ù±ð²õ³¦°ù¾±±è³¦¾±¨®²Ô | Claves de m¨¦tricas compatibles | Comentarios |
---|---|---|---|
Monitoreo de Ember+. | ember.get | Actualmente solo est¨¢ disponible para ser compilado desde el c¨®digo fuente (tanto para Unix y Windows). Consulte tambi¨¦n Par¨¢metros de configuraci¨®n del complemento Ember+. |
|
Monitoreo de servidores y cl¨²steres de MongoDB (base de datos distribuida basada en documentos). | mongodb.collection. estad¨ªsticas, mongodb.collections.discovery, mongodb.collections.usage, mongodb.connpool.stats, mongodb.db.stats, mongodb.db.discovery, mongodb.jumbo_chunks.count, mongodb.oplog.stats,< br>mongodb.ping, mongodb.rs.config, mongodb.rs.status, mongodb.server.status, mongodb.sh.discovery, mongodb.version |
Para configurar conexiones cifradas a la base de datos, especifique los par¨¢metros TLS en el archivo de configuraci¨®n del agente como par¨¢metros de sesi¨®n con nombre. Actualmente, los par¨¢metros TLS no se pueden pasar como par¨¢metros de clave de m¨¦trica. Consulte tambi¨¦n par¨¢metros de configuraci¨®n del complemento MongoDB. |
|
Monitoreo de la base de datos MSSQL. | mssql.availability.group.get, mssql.custom.query, mssql.db. obtener, mssql.job.status.get, mssql.last.backup.get, mssql.local.db.get, mssql.mirroring.get, mssql.nonlocal.db.get, mssql.perfcounter.get, mssql.ping, mssql.quorum.get, mssql.quorum.member.get, mssql.replica.get, mssql.version | Para configurar una conexi¨®n cifrada a la base de datos, especifique los par¨¢metros TLS en el archivo de configuraci¨®n del agente como sesi¨®n con nombre o par¨¢metros predeterminados. Actualmente, los par¨¢metros TLS no se pueden pasar como par¨¢metros de clave de m¨¦trica. Consulte tambi¨¦n par¨¢metros de configuraci¨®n del complemento MSSQL. |
|
Monitoreo de PostgreSQL y sus bifurcaciones. | pgsql.autovacuum.count, pgsql.archive, pgsql. bgwriter, pgsql.cache.hit, pgsql.connections, pgsql.custom.query, pgsql.dbstat, pgsql.dbstat.sum, pgsql.db.age, pgsql.db.bloating_tables, pgsql. db.discovery, pgsql.db.size, pgsql.locks, pgsql.oldest.xid, pgsql.ping, pgsql.queries, pgsql.replication.count, pgsql.replication.process, pgsql.replication.process.discovery , pgsql.replication.recovery_role, pgsql.replication.status, pgsql.replication_lag.b, pgsql.replication_lag.sec, pgsql.uptime, pgsql.version, pgsql.wal.stat |
Para configurar conexiones cifradas a la base de datos, especifique los par¨¢metros TLS en el archivo de configuraci¨®n del agente como par¨¢metros [sesi¨®n con nombre] (# sesiones_con nombre) o [predeterminado] (# valores-default). Actualmente, los par¨¢metros TLS no se pueden pasar como par¨¢metros de clave de m¨¦trica. . Consulte tambi¨¦n Par¨¢metros de configuraci¨®n del complemento PostgreSQL. |
Ver tambi¨¦n: