2011-10-24 18 views
7

Ho eseguito nagios per circa due anni, ma recentemente questo problema ha iniziato a comparire con uno dei miei servizi.Nagios: CRITICO - Timeout del socket dopo 10 secondi

mi sto

CRITICAL - Socket timeout after 10 seconds 

per un controllo check_http -H my.host.com -f follow -u /abc/def, che ha usato per funzionare bene. Nessun altro servizio segnala questo problema. Il sito remoto è attivo e in buone condizioni, e posso fare un wget http://my.host.com/abc/def dal server nagios e scarica la risposta in modo corretto. Inoltre, fare un check_http -H my.host.com -f follow funziona bene, cioè è solo quando uso l'argomento -u che le cose si interrompono. Ho anche provato a passargli una stringa di user agent diversa, nessuna differenza. Ho provato ad aumentare il timeout, senza fortuna. Ho provato con -v, ma tutto ciò che ottiene è:

GET /abc/def HTTP/1.0 
User-Agent: check_http/v1861 (nagios-plugins 1.4.11) 
Connection: close 
Host: my.host.com 


CRITICAL - Socket timeout after 10 seconds 

... che non mi dice cosa sta andando storto.

Qualche idea su come risolvere questo problema?

Grazie!

+0

Avete provato ad aggiungere '' -4' o -6' alle opzioni check_http? Ho avuto questo problema prima di dove dovevo forzare IPv4 per un controllo. – Starfish

+0

Grazie, ho fatto un tentativo. Con '-4' ottengo lo stesso errore. Con '-6' Ottengo: Nome o servizio sconosciuto HTTP CRITICO - Impossibile aprire il socket TCP – fulv

+0

Puoi pubblicare l'output del tuo wget? Suppongo che dal momento che stai usando segui che l'URL di destinazione fa un reindirizzamento. – Starfish

risposta

15

Provare a utilizzare l'opzione -N di check_http.

Ho riscontrato problemi simili e nel mio caso il server Web non ha interrotto la connessione dopo aver inviato la risposta (https funzionava, http non lo era). check_http prova a leggere dal socket aperto finché il server non chiude la connessione. Se ciò non accade, si verifica il timeout.

L'opzione -N indica a check_http di ricevere solo l'intestazione, ma non il contenuto della pagina/documento.

+1

Grazie, infine, il mio servizio non è in stato di "problema" più! – fulv

+1

I saluti per la soluzione, tuttavia le connessioni non terminate sono un segno di un possibile problema nello stack. L'OP può commentare qual è stata la modifica che l'ha attivata, se nota? – cosimo

+0

Aveva lo stesso problema ed era dovuto a un'appliance di rete "di ottimizzazione". – Vegard

1

Ho rintracciato il mio problema a un problema con i provider di sicurezza configurati nella versione più recente di OpenSUSE.

Dal riepilogo di altre pagine Web sembra essere un problema con un tentativo di utilizzare il protocollo TLSv2 che non sembra funzionare correttamente o manca qualcosa nelle configurazioni predefinite per consentirne il funzionamento.

Per risolvere il problema, ho commentato il provider di sicurezza in questione dal file di configurazione della sicurezza JRE.

#security.provider.10=sun.security.pkcs11.SunPKCS11 

Il security.provider. il valore potrebbe essere diverso nella configurazione, ma in sostanza il provider SunPKCS11 è in discussione.

Questa configurazione si trova nella

$JAVA_HOME/lib/security/java.security 

del JRE che si sta utilizzando.

0

fisso con questo URL in nrpe.cfg: (a Deb 6.0 Squeeze utilizzando Nagios-nrpe server)

command[check_http]=/usr/lib/nagios/plugins/check_http -H localhost -p 8080 -N -u /login?from=%2F 
Problemi correlati