Pandora FMS community forums
Error curl: (6) Could not resolve host: 'http - Printable Version

+- Pandora FMS community forums (http://pandorafms.org/forum)
+-- Forum: Pandora FMS (http://pandorafms.org/forum/forum-3.html)
+--- Forum: Español / Spanish forum (http://pandorafms.org/forum/forum-8.html)
+--- Thread: Error curl: (6) Could not resolve host: 'http (/thread-15189.html)



Error curl: (6) Could not resolve host: 'http - muroz - 05-15-2020

Hola comunidad,
Tengo instalado Pandora FMS v7.0NG.745 - Desarrollo 200513 - MR 37 en un windows server 2016.
Cuando reinicio el servicio de pandora server recibo este error log.
¿Alguna pista de donde puede estar el problema?


Code:
Starting Pandora FMS Server. Error logging activated.
 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                Dload  Upload   Total   Spent    Left  Speed

 0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (6) Could not resolve host: 'http
"op2" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
"apipass" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
"user" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.
El sistema no puede encontrar la ruta especificada.
Use of uninitialized value $res_testing_api[0] in string ne at pandora_server line 708.
Use of uninitialized value in concatenation (.) or string at /<C:\PandoraFMS\Pandora_Server\pandora_server.exe>PandoraFMS/Core.pm line 5307.
Use of uninitialized value in concatenation (.) or string at /<C:\PandoraFMS\Pandora_Server\pandora_server.exe>PandoraFMS/Core.pm line 5307.
Use of uninitialized value in concatenation (.) or string at /<C:\PandoraFMS\Pandora_Server\pandora_server.exe>PandoraFMS/Core.pm line 5307.
Use of uninitialized value in concatenation (.) or string at /<C:\PandoraFMS\Pandora_Server\pandora_server.exe>PandoraFMS/Core.pm line 5307.
Use of uninitialized value in concatenation (.) or string at /<C:\PandoraFMS\Pandora_Server\pandora_server.exe>PandoraFMS/Core.pm line 5307.
Use of uninitialized value in concatenation (.) or string at /<C:\PandoraFMS\Pandora_Server\pandora_server.exe>PandoraFMS/Core.pm line 5307.



RE: Error curl: (6) Could not resolve host: 'http - Jimmy_Olano - 05-16-2020

¡Hola! Intentad entrecomillar los comandos a ver qué tal es mi primera sugerencia, ¡tened feliz día!


RE: Error curl: (6) Could not resolve host: 'http - muroz - 05-18-2020

(05-16-2020, 09:33 AM)Jimmy_Olano Wrote: ¡Hola! Intentad entrecomillar los comandos a ver qué tal es mi primera sugerencia, ¡tened feliz día!

Hola Jimmy,
perdona pero no termino de entenderlo.
¿Tengo que entrecomillar los comandos de algún fichero?
Saludos,


RE: Error curl: (6) Could not resolve host: 'http - Jimmy_Olano - 05-18-2020

(05-18-2020, 07:00 AM)muroz Wrote:
(05-16-2020, 09:33 AM)Jimmy_Olano Wrote: ¡Hola! Intentad entrecomillar los comandos a ver qué tal es mi primera sugerencia, ¡tened feliz día!

Hola Jimmy,
perdona pero no termino de entenderlo.
¿Tengo que entrecomillar los comandos de algún fichero?
Saludos,

Porque la traducción del mensaje de error sería:

Code:
No se pudo resolver el anfitrión

Uso del valor no inicializado $res_testing_api[0] en la cadena ne en la línea 708 del servidor de pandora.

Uso del valor no inicializado en la concatenación (.) o en la cadena en
Corrijo mi sugerencia: "entrecomillad" (colocad entre comillas, más bien) la dirección web o URL para curl, ¡tened feliz día!


RE: Error curl: (6) Could not resolve host: 'http - muroz - 05-18-2020

Adjunto los fichero de log del Pandora Server: [attachment=3562]
(05-18-2020, 02:49 PM)Jimmy_Olano Wrote:
(05-18-2020, 07:00 AM)muroz Wrote:
(05-16-2020, 09:33 AM)Jimmy_Olano Wrote: ¡Hola! Intentad entrecomillar los comandos a ver qué tal es mi primera sugerencia, ¡tened feliz día!

Hola Jimmy,
perdona pero no termino de entenderlo.
¿Tengo que entrecomillar los comandos de algún fichero?
Saludos,

Porque la traducción del mensaje de error sería:

Code:
No se pudo resolver el anfitrión

Uso del valor no inicializado $res_testing_api[0] en la cadena ne en la línea 708 del servidor de pandora.

Uso del valor no inicializado en la concatenación (.) o en la cadena en
Corrijo mi sugerencia: "entrecomillad" (colocad entre comillas, más bien) la dirección web o URL para curl, ¡tened feliz día!



RE: Error curl: (6) Could not resolve host: 'http - Jimmy_Olano - 05-19-2020

Hmmm ya veo lo adjuntasteis... Pensaba que era una URL no entrecomillada pero debemos ir más allá:

https://pandorafms.com/docs/index.php?title=Pandora:Documentation_es:Anexo_API_external

Esa es la documentación a la API de Pandora FMS y en GitHub observo cómo utilizan código para concatenar valores e iniciar la conexión (simple prueba de conexión de curl):

Code:
# Testing API url
my $curl_execution = "'".$Config{'console_api_url'}."?op=get&op2=test&apipass=".$Config{"console_api_pass"}."&user=".$Config{"console_user"}."&pass=".$Config{"console_pass"}."'";

my $exe_testing_api = `curl $curl_execution 2>/dev/null`;

my @res_testing_api = split(',', $exe_testing_api);

if ( $res_testing_api[0] ne 'OK' ) {

logger(\%Config, "Warning! The server does not have access to the API, this can trigger problems in the generation of reports and graphs.", 1);

pandora_event (\%Config, "Server does not have access to the API", 0, 0, 0, 0, 0, 'system', 0, $DBH);

}

Dentro de mi ignorancia, allí pienso yo puede haber una pista hacia vuestro estado que describís:

https://github.com/pandorafms/pandorafms/blob/develop/pandora_server/bin/pandora_server

my $curl_execution = "'".$Config{'console_api_url'}."?op=get&op2=test&apipass=".$Config{"console_api_pass"}."&user=".$Config{"console_user"}."&pass=".$Config{"console_pass"}."'";


Y está correctamente todo entrecomillado (lo resalto en color verde), a eso me refería. Asumo que las variables ya están establecidas ($Config{'console_api_url'} es la dirección del servidor -por defecto http://localhost/pandora_console/include/api.php, y así las demás no contienen valores nulos).

En ambiente Windows podríamos probar (en un servidor réplica o copia, no en producción):

my $curl_execution = "\"".$Config{'console_api_url'}."?op=get&op2=test&apipass=".$Config{"console_api_pass"}."&user=".$Config{"console_user"}."&pass=".$Config{"console_pass"}."\"";

( https://en.wikibooks.org/wiki/Perl_Programming/Strings#Single-quoted_strings )

También asumo que curl está configurado en la ruta path de Windows (ver https://www.youtube.com/watch?v=OnO0XLCts9k ) , de hecho se ejecuta y lanza el error de que no puede resolver la dirección, pues claro, hay que "pasarle" los parámetros a curl.

De mi parte queda averiguar dónde diantres explícitamente se lanza curl, solo para satisfacer mi curiosidad. Ahora bien leed y revisad todo lo referente a la API, eso para refrescar conocimientos (yo también lo voy a releer) , ¡tened feliz día!


RE: Error curl: (6) Could not resolve host: 'http - muroz - 05-19-2020

(05-19-2020, 12:37 PM)Jimmy_Olano Wrote: Hmmm ya veo lo adjuntasteis... Pensaba que era una URL no entrecomillada pero debemos ir más allá:

https://pandorafms.com/docs/index.php?title=Pandora:Documentation_es:Anexo_API_external

Esa es la documentación a la API de Pandora FMS y en GitHub observo cómo utilizan código para concatenar valores e iniciar la conexión (simple prueba de conexión de curl):

Code:
# Testing API url
my $curl_execution = "'".$Config{'console_api_url'}."?op=get&op2=test&apipass=".$Config{"console_api_pass"}."&user=".$Config{"console_user"}."&pass=".$Config{"console_pass"}."'";

my $exe_testing_api = `curl $curl_execution 2>/dev/null`;

my @res_testing_api = split(',', $exe_testing_api);

if ( $res_testing_api[0] ne 'OK' ) {

logger(\%Config, "Warning! The server does not have access to the API, this can trigger problems in the generation of reports and graphs.", 1);

pandora_event (\%Config, "Server does not have access to the API", 0, 0, 0, 0, 0, 'system', 0, $DBH);

}

Dentro de mi ignorancia, allí pienso yo puede haber una pista hacia vuestro estado que describís:

https://github.com/pandorafms/pandorafms/blob/develop/pandora_server/bin/pandora_server

my $curl_execution = "'".$Config{'console_api_url'}."?op=get&op2=test&apipass=".$Config{"console_api_pass"}."&user=".$Config{"console_user"}."&pass=".$Config{"console_pass"}."'";


Y está correctamente todo entrecomillado (lo resalto en color verde), a eso me refería. Asumo que las variables ya están establecidas ($Config{'console_api_url'} es la dirección del servidor -por defecto http://localhost/pandora_console/include/api.php, y así las demás no contienen valores nulos).

En ambiente Windows podríamos probar (en un servidor réplica o copia, no en producción):

my $curl_execution = "\"".$Config{'console_api_url'}."?op=get&op2=test&apipass=".$Config{"console_api_pass"}."&user=".$Config{"console_user"}."&pass=".$Config{"console_pass"}."\"";

( https://en.wikibooks.org/wiki/Perl_Programming/Strings#Single-quoted_strings )

También asumo que curl está configurado en la ruta path de Windows (ver https://www.youtube.com/watch?v=OnO0XLCts9k ) , de hecho se ejecuta y lanza el error de que no puede resolver la dirección, pues claro, hay que "pasarle" los parámetros a curl.

De mi parte queda averiguar dónde diantres explícitamente se lanza curl, solo para satisfacer mi curiosidad. Ahora bien leed y revisad todo lo referente a la API, eso para refrescar conocimientos (yo también lo voy a releer) , ¡tened feliz día!

Hola Jimmy,
Gracias por tu ayuda.
He detectado dos cosas a arreglar en la pagina de configuración general

1.- El campo "Almacenamiento de adjuntos" no se guarda bien en la base de datos. Lo he solucionado temporalmente usando el carácter "/" en vez de "\". He guardado C:/PandoraFMS/Apache/htdocs/pandora_console/attachment en vez de C:\PandoraFMS\Apache\htdocs\pandora_console\attachment

2.- El campo "Lista de IPs con acceso a la API" tampoco se guarda bien. Me ha tocado convertirlo a string y luego usar implode para generar la lista en el campo $config['attachment_store']

Voy a seguir con tus indicaciones e iré posteando lo que detecte.


RE: Error curl: (6) Could not resolve host: 'http - Jimmy_Olano - 05-21-2020

¡Qué bien, me alegra!

Yo mientras tanto sigo estudiando lo de las particularidades de Perl en Windows, ahora bien pensaba que era yo solo en eso pero antes que mi persona a mucha gente le ha sucedido (en inglés llaman a "quirky" -estrafalario- al asunto), esto es lo que estoy leyendo:

https://www.powershelladmin.com/wiki/Running_perl_one-liners_and_scripts_from_powershell

Quote:cmd.exe seems to have a vague concept of quoting and strings

¡Tened un feliz día!