Kod: Markera allt
passthru("ping -c1 -q -w1 ".$url_exp[2]." > /dev/null", $retval);
if ($retval != 0) {
echo "Kan inte nå ".$url_exp[2]."\n\n";
}
Jag la in en koll om hosten var uppe innan data hämtades och analyserades.
2 orsaker till att det falerade:
1. Inte alla hosts svarar på ping, även om de är uppe.
2. Jag hade satt timeout till 1 sekund och gjorde ett försök.
Så de siter som svarade snabbt på ping föll inte bort. I vissa fall (de som rapporterar via url eller ftp) pingas temperatur.nu, måhända var det de stationerna som inte föll bort.
Kontrollen ligger kvar med längre timeout, men avbryter inte skriptet om pingen inte får något svar. Informationen används dock för att presentera felorsak.