Hello Guest

Author Topic: Modulo Postgresql - Error perl  (Read 87 times)

0 Members and 1 Guest are viewing this topic.

Offline serco

  • Jr. Member
  • **
  • Posts: 13
  • Karma: 0
    • View Profile
Modulo Postgresql - Error perl
« on: March 28, 2017, 04:51:41 AM »
Hola,

estoy intentando utilizar el modulo para postgresql que hay en :  http://library.pandorafms.com/index.php?sec=Library&sec2=repository&lng=es&action=view_PUI&id_PUI=550

Con la instalación del agente software (en CentOS7) y el plugin no ha habido mayor problema, he modificado los archivos de configuración necesarios, pero al intentar ejecutar el plugin me aparece el siguiente error:

Quote
# ./Pandora_Plugin_psqlserver_v1.pl
Can't locate DBI.pm in @INC (@INC contains: /usr/lib/perl5 /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at ./Pandora_Plugin_psqlserver_v1.pl line 16.
BEGIN failed--compilation aborted at ./Pandora_Plugin_psqlserver_v1.pl line 16.

He ejecutado un "yum update perl" pero no he conseguido solucionarlo.


Offline antonio.s

  • Administrator
  • Smart member
  • *****
  • Posts: 343
  • Karma: 5
    • View Profile
Re: Modulo Postgresql - Error perl
« Reply #1 on: March 28, 2017, 05:01:44 AM »
Hola serco,

Parece que necesitas instalar el módulo de perl DBI, puedes buscar en internet cómo hacerlo para CentOS 7. Encontrarás varias opciones, bien a través de CPAN, bien descargando la dependencia o bien mediante yum. Por ejemplo la instalación mediante yum sería algo parecido a esto:

Code: [Select]
yum install perl-DBI

Las dependencias de perl a veces pueden ser tediosas de resolver, así que no pierdas la paciencia y mira los diferentes medios de instalarla si te falla el primero.

Un saludo,
Antonio.

Offline serco

  • Jr. Member
  • **
  • Posts: 13
  • Karma: 0
    • View Profile
Re: Modulo Postgresql - Error perl
« Reply #2 on: March 29, 2017, 05:32:25 AM »
Hola Antonio,

finalmente parece que he solucionado el tema de perl con los comandos:

Code: [Select]
yum install perl-DBI
yum install perl-DBD*

Ahora al ejecutar a mano el plugin me aprece lo siguiente:

Code: [Select]
# ./Pandora_Plugin_psqlserver_v1.pl
Use of uninitialized value $file in open at ./Pandora_Plugin_psqlserver_v1.pl line 90.
readline() on closed filehandle FILE at ./Pandora_Plugin_psqlserver_v1.pl line 94.
        <module>
        <name>PSQL Server Status</name>
        <type><![CDATA[generic_proc]]></type>
        <data>0</data>
        <description>Information Sever Status</description>
        <status>CRITICAL</status>
        </module>
        <module>
        <name>PSQL Cpu Usage</name>
        <type><![CDATA[generic_data]]></type>
        <data>0</data>
        <description>Information about Cpu percent usage for Postgresql</description>
        <status>CRITICAL</status>
        </module>
        <module>
        <name>PSQL Memory Usage</name>
        <type><![CDATA[generic_data]]></type>
        <data>0</data>
        <description>Information about Memory percent usage for Postgresql</description>
        <status>CRITICAL</status>
        </module>

Pero en el servidor siguen sin cargarse los modulos de este plugin. He podido ver que si se cargan los modulos definidos en "pandora_agent.conf", pero los del plugin de postgresql no.

No tengo claro que puede estar fallando.

Offline antonio.s

  • Administrator
  • Smart member
  • *****
  • Posts: 343
  • Karma: 5
    • View Profile
Re: Modulo Postgresql - Error perl
« Reply #3 on: March 29, 2017, 06:51:45 AM »
Hola serco,

Cuando un agente recoge la información que tiene definida en su fichero de configuración la formatea toda en un fichero XML que envía al servidor de Pandora, éste la procesa para ser mostrada en forma de módulos en la consola.

Con los plugins de agente ocurre algo parecido, pero éstos construyen su propio trozo de XML que es insertado en el fichero XML final que envía el agente. Si el resultado de la ejecución manual del plugin devuelve algo fuera de este formato pueden ocurrir varias cosas y ninguna buena. Podría desde simplemente ignorar la parte incorrecta hasta quedar el agente entero en agente desconocido al no reconocer un formato XML entero en el fichero.

Sabiendo esto, seguramente solo aparecerán los módulos en la consola de Pandora cuando el error inicial desaparezca. La causa del error seguramente se deba a que el plugin ya tiene cierto tiempo y existe una actualización acorde a la versión de postgre. Te recomiendo que eches un vistazo al código del plugin para intentar solucionar los errores, o bien tratar de filtrar la salida para que el resultado de la ejecución únicamente devuelva información en formato XML.

Un saludo,
Antonio.

Offline serco

  • Jr. Member
  • **
  • Posts: 13
  • Karma: 0
    • View Profile
Re: Modulo Postgresql - Error perl
« Reply #4 on: March 30, 2017, 02:03:37 AM »
Ok, muchas gracias. Voy a ver si doy con la tecla.

Offline serco

  • Jr. Member
  • **
  • Posts: 13
  • Karma: 0
    • View Profile
Re: Modulo Postgresql - Error perl
« Reply #5 on: March 31, 2017, 04:44:32 AM »

Hola, por si a alguien le hace falta dejo aqui el plugin que finalmente me ha funcionado :

http://library.pandorafms.com/index.php?sec=Library&sec2=repository&lng=es&action=view_PUI&id_PUI=553

Saludos.