Welcome to Pandora FMS Community › Forums › Soporte de la comunidad › Plugins de Agente
-
Plugins de Agente
Posted by luicabcru on August 27, 2012 at 21:49Buenas tardes a todos,
tengo un par de dudas (creo que sencillas) acerca de los plugins para Pandora FMS ejecutados en los agentes. A la hora de realizar un plugin de este tipo la presentación de los datos debe ser en XML según he leÃdo en el manual:
1.- Me preguntaba si es posible indicar en esta presentación mediante alguna directiva el grupo (Database, Applications…) donde quiero añadir dicho nuevo módulo cuando sea procesado por el servidor y se visualice en la consola. Por ejemplo:
o algo parecido. 2.- También desconozco todos los tipos de datos que puedo indicar en la directiva:
y que puede recibir el servidor, a parte de generic_data. ¿Cómo puedo introducir una lista de ‘Strings’? Para un módulo SNMP con información acerca del sistema:Sysname, indica alphanumeric data… Si me facilitan estas respuestas o algún lugar donde encontrar información acerca de ellas, ya sea en la wiki o en la documentación oficial, les estaré muy agradecidos.
Saludos!
tpalacios replied 12 years, 5 months ago 3 Members · 12 Replies -
12 Replies
-
::
Buenas tardes;
Respecto a la primera pregunta,puedes especificar el grupo en la configuración del agente con el parámetro group,no hay un parámetro para los módulos en el que se pueda fijar,de todas formas voy a comprobarlo.
Por otro lado para crear un módulo de tipo string deberÃas usar módulos de tipo generic_data_string o async_string según tu propósito.
Adjunto los links a la documentación referido tanto a creación y configuración de módulos como de plugins:
http://openideas.info/wiki/index.php?title=Pandora:Documentation_es:Operacion
En esa web tienes un amplio repertorio de documentación acerca de Pandora FMS.
Un saludo.
-
::
Hola Nacho,
primeramente, quiero darte las gracias por tu respuesta.
Respecto a la primera pregunta,puedes especificar el grupo en la configuración del agente con el parámetro group,no hay un parámetro para los módulos en el que se pueda fijar,de todas formas voy a comprobarlo.
Si no he entendido mal, se puede especificar el grupo al que pertenece el agente en su fichero de configuración, pero mediante la presentación de los datos en el formato XML, ¿no es posible asignar un grupo a los módulos que contiene?
Si es asÃ, creo que serÃa una mejora razonable. Mi problema se ha presentado al crear un nuevo plugin que incorpora a un determinado agente en la consola de Pandora FMS una gran cantidad de módulos, sin otra forma de agruparlos que asignando dichos módulos posteriormente desde la consola al grupo que quiero introducirles (ya sea uno a uno o con una operación masiva).
La posibilidad de introducir una nueva directiva en el XML reagrupando cada módulo disminuirÃa un poco el trabajo, como ya puse en el ejemplo. (He de decir, que no sé si es viable o si no es posible, sólo es una idea)
Para la segunda pregunta me has contestado directamente con la documentación y los diferentes tipos de datos posibles, resolviendo completamente mi duda.
Gracias de nuevo por su respuesta! saludos.
-
::
Hola;
Respecto a asignar un grupo a varios módulos a la vez puedes realizarlo utilizando la opción de operaciones masivas desde la columna de administración de esa manera podrás asignar los modulos que quieras en un grupo con lo cual serÃa notablemente más rápido que lo que quieres realizar.
Un saludo 🙂
-
::
Vale,acabo de ver que has tratado que utilizar operaciones masivas igualmente,voy a ver si es posible introducir algún campo grupo en la estructura del módulo ya que no me suena que se pueda hacer,en todo caso,puede ser un buen feature para futuras versiones del producto.
Un saludo.
-
::
Vale,acabo de ver que has tratado que utilizar operaciones masivas igualmente,voy a ver si es posible introducir algún campo grupo en la estructura del módulo ya que no me suena que se pueda hacer,en todo caso,puede ser un buen feature para futuras versiones del producto.
Un saludo.
Si de momento lo más recomendable es con una operación masiva pero podrÃa incluso evitarse eso con un campo en el XML si fuera posible jeje 😀
De acuerdo, gracias de nuevo por la aclaración!Saludos.
-
::
Buenas tardes,
tengo una cuestión acerca de la ejecución de los plugins de Agente en Pandora FMS, y es acerca de los parámetros y la forma de ajustarlos en el fichero de configuración del agente en la directiva module_plugin, ejemplo:
module_plugin pandora_df tmpfs /dev/sda1
Segun entiendo aquà en este plugin, se reciben dos parametros en este plugin. Dicho plugin está alojado en /etc/pandora/plugins con permisos de ejecución 700 y funciona correctamente.
El caso, es que he estado desarrollando un plugin en Perl que recibe los parámetros de entrada y los lee según la opción que le preceda, he visto que esto funciona en otros plugins para Pandora FMS:
./plugin.pl -u user -p password -h direccion_ip     [… y otros cuantos campos]
Pero creo que al poner estas opciones (-u -p -h …) en el fichero de configuración (pandora_agent.conf) está cogiendo cada una de ellas como un argumento al plugin y éste no funciona correctamente (no lo ejecuta, es decir, no carga los módulos en la consola web).
¿Existe alguna forma de evitar esto en el fichero de configuración sin tener que modificar el código del plugin?
Ya que si indico directamente los campos (user, password, IP, etc) como argumentos en el fichero de configuración, el plugin no sabrá cuál es cada uno.He probado su ejecución bajo lÃnea de comandos y funciona como deberÃa. Asà que creo que el fallo radica en este punto.
Si no fuera posible y tuviera que modificar el código, de forma que el plugin aceptara argumentos de entrada (@ARGV), serÃa obligatorio establecer un orden a la hora de introducirlos para diferenciar cada uno de ellos.ARGV[0]=user
ARGV[1]=password
ARGV[2]=ipetc..
¿No supone una limitación a la hora de programar plugins para Pandora FMS?
Quizás suponga un esfuerzo demasiado grande o imposible de realizar una modificación respecto a esto.
Espero estar equivocado y que se pueda de alguna forma indicar esto en el fichero de configuración, pero me temo que no.
Gracias de antemano y saludos!
-
::
No deberÃa de haber ningún problema pasando parámetros.
Activa el modo debug en el fichero de configuración del agente (debug 1) y redirige el module plugin a un fichero de errores.
Adjunta el log del agente asi como el debug.log , los xml que genere en /tmp el agente y el fichero de errores.
¿Sobre que sistema operativo tienes instalado el agente?
Un saludo.
-
::
Hola Nacho,
Muchas gracias de nuevo por esta rapidÃsima y alentadora respuesta, me has llenado de esperanzas, quizás me ahorres mucho trabajo 😀
Voy a ir por partes si te parece, por si estoy haciendo algo mal.
Activa el modo debug en el fichero de configuración del agente (debug 1) y redirige el module plugin a un fichero de errores.
He activado en el fichero de configuración del agente /etc/pandora/pandora_agent.conf la directiva:
debug 1
Y he modificado la salida de la directiva module_plugin hacia un fichero de la siguiente forma (corrÃgeme si me equivoco por favor):
module_plugin plugin -u user -c pass -h ip >> /var/log/pandora/module_plugin.log
He reiniciado el servicio del agente para que surjan efecto los cambios.
/etc/init.d/pandora_agent_daemon restart Stopping Pandora Agent. Pandora FMS Agent is now running with PID 17964
He revisado esa salida y parece que funciona correctamente, muestra el formato XML con los datos.
Adjunta el log del agente asi como el debug.log , los xml que genere en /tmp el agente y el fichero de errores.
He encontrado y adjuntado a este post los ficheros del log del agente, el xml creado en /tmp, y la salida tras la ejecución de module_plugin:
pandora_agent.log
PandoraServer.1346342808.data
module_plugin.log
El fichero debug.log no lo encuentro en el equipo. Estoy buscando en /var/log/pandora/ junto al resto de logs. También he probado una busqueda con:
find / -name debug.log
¿Sobre que sistema operativo tienes instalado el agente?
Están sobre un sistema Linux Debian 6 Squezze tanto el agente como el servidor de Pandora FMS v4.0.1
Es extraño, no entiendo muy bien, pero parece que en el XML generado en /tmp no incluye los módulos nuevos del plugin ¿no?.
Espero tu respuesta, gracias por tu ayuda!!Saludos.
-
::
Buenas.
El fichero XML no contiene los módulos de tu plugin porque has redirigido la salida de tu plugin a un fichero, luego ésta no es procesada por el agente.
En vez de redirigir la salida estándar, redirige la salida de errores:
module_plugin plugin -u user -c pass -h ip 2>> /var/log/pandora/module_plugin.log
Y vuelve a mandarnos los ficheros.
Por cierto sobre el pandora_debug.log, mis disculpas, ya que si mal no recuerdo este log adicional únicamente está presente en Windows.
Un saludo.
-
::
Hola buenas de nuevo,
es cierto lo que comentas, ayer probé a redirigir sólo la salida de errores de la siguiente forma:
module_plugin plugin.pl -u user -c pass -h ip 2> /var/log/pandora/module_plugin.log
y esta vez si carga el fichero de datos en el directorio /tmp con los módulos del plugin. (adjunto archivo). Se pueden distinguir los módulos del plugin en el formato XML añadidos al fichero de datos en /tmp porque son los que no tienen tabulación, a partir de ahà comienza el plugin, son unos cuantos.
El fichero log producido por module_plugin a la salida de la ejecución del script está vacÃo, parece que la ejecución del plugin no da ningún fallo, además los datos que aparecen en el fichero de datos son correctos.
Sin embargo, siguen sin aparecer los módulos en la consola web de Pandora FMS. Voy a comprobar la sentencia de los XML por si existe algún error de sintaxis o algún carácter indigesto y os comento.
¿Se le ocurre alguna idea más que pueda estar interfiriendo entre el agente, servidor y consola?
EDIT: Me acabo de dar cuenta de otro dato que parece importante, los módulos que introduce el agente fuera parte de los de mi plugin y que aparecen al principio del fichero de datos en /tmp que he adjuntado: cpu_user, Load Average, disk_root_free, freepercentmemory, memfree, memused, proctotal, sshDaemon, LastLogin
No se actualizan desde hace horas (captura imagen) ¿Parece que el agente está teniendo problemas para enviar los datos? El agente está en el mismo equipo que el servidor de Pandora FMS, y hay otros módulos de dicho agente que si se actualizan correctamente, pero son módulos remotos, de red o plugin server ejecutados en el servidor…
También he probado a volver a activar el plugin de agente pandora_df que muestra el espacio en disco libre en % de todas las particiones y tampoco actualiza los datos desde hace tiempo.Saludos y gracias de nuevo por sus atentas respuestas!!
-
-
::
La sintaxis del fichero XML no es correcta en el sentido de que no estás filtrando adecuadamente los caracteres especiales presentes en nombre y descripción de tus módulos, provocando este fallo.
Para evitarlo, deberás encapsular nombre y descripción y cualquier otro campo con caracteres especiales de esta manera:
p.e:
Incluso haciendo uso de estos campos, deberÃas en la medida de lo posible evitar el uso de tildes en tus nombres/descripciones/valores por ejemplo.
Saludos.