diff --git a/check-errors.php b/check-errors.php index 8aad35a9a..fba17ab35 100755 --- a/check-errors.php +++ b/check-errors.php @@ -10,6 +10,21 @@ $interface_query = mysql_query("SELECT * FROM `interfaces` AS I, `devices` AS D while ($interface = mysql_fetch_array($interface_query)) { $errors = interface_errors($interface); mysql_query("UPDATE `interfaces` SET in_errors = '" . $errors['in'] . "', out_errors = '" . $errors['out'] . "' WHERE interface_id = '" . $interface['interface_id'] . "'"); + + if($errors['in'] > '100' || $errors['out'] > '100') { $errored[] = $interface['hostname'] . " - " . $interface['ifAlias'] . " - " . $errors['in'] . " - " . $errors['out']; } + +} + +if($errored) { + $i=0; + $msg = "Interfaces with errors : \n\n"; + foreach ($errored as $int) { + $msg .= "$int\n"; + $i++; + } + + mail($config['email_default'], "Observer detected errors on $i interfaces", $msg, $config['email_headers']); + } ?> diff --git a/check-services.php b/check-services.php index b2d0bf31e..e19a772d8 100755 --- a/check-services.php +++ b/check-services.php @@ -34,6 +34,6 @@ while ($service = mysql_fetch_array($query)) { } else { unset($updated); } $update_sql = "UPDATE `services` SET `service_status` = '$status', `service_message` = '" . addslashes($check) . "', `service_checked` = '" . time() . "' $updated WHERE `service_id` = '" . $service['service_id']. "'"; mysql_query($update_sql); - echo("$update_sql " . mysql_affected_rows() . " rows updated\n"); +# echo("$update_sql " . mysql_affected_rows() . " rows updated\n"); } ?> diff --git a/cron-hourly.sh b/cron-hourly.sh index 97e5bf698..90a8aa6db 100755 --- a/cron-hourly.sh +++ b/cron-hourly.sh @@ -4,10 +4,10 @@ ./discover-nets.php ./ips.php ./cleanup.php -./discover-storage.php & -./discover-temperatures.php & -./generate-map.sh & -./discover-cisco-temp.php & -./discover-vlans.php & -./update-interface.php & -./check-errors.php & +./discover-storage.php +./discover-temperatures.php +./generate-map.sh +./discover-cisco-temp.php +./discover-vlans.php +./update-interface.php +./check-errors.php diff --git a/includes/functions.php b/includes/functions.php index 47fbf5c75..ec66805c3 100755 --- a/includes/functions.php +++ b/includes/functions.php @@ -168,7 +168,7 @@ function interface_rates ($interface) { function interface_errors ($interface) { - global $config; + global $config, $rrd_dir; $rrdfile = $rrd_dir . "/" . $interface['hostname'] . "/" . $interface['ifIndex'] . ".rrd"; $cmd = $config['rrdtool']." fetch -s -1d -e -300s $rrdfile AVERAGE | grep : | cut -d\" \" -f 4,5"; $data = trim(`$cmd`); diff --git a/includes/polling/device-netstats.inc.php b/includes/polling/device-netstats.inc.php index 59fc373c1..e17584589 100755 --- a/includes/polling/device-netstats.inc.php +++ b/includes/polling/device-netstats.inc.php @@ -12,7 +12,7 @@ if($device[os] != "Snom") { 'tcpEstabResets','tcpInSegs','tcpOutSegs','tcpRetransSegs','udpInDatagrams','udpOutDatagrams','udpInErrors', 'udpNoPorts'); - $rrdfile = $rrd_file . "/" . $device['hostname'] . "/netinfo.rrd"; + $rrdfile = $rrd_dir . "/" . $device['hostname'] . "/netinfo.rrd"; $Orrdfile = "rrd/" . $device['hostname'] . "-netinfo.rrd"; if(is_file($Orrdfile) && !is_file($rrdfile)) { rename($Orrdfile, $rrdfile); echo("Moving $Orrdfile to $rrdfile"); } diff --git a/poll-device.php b/poll-device.php index 990508e63..c23c13e85 100755 --- a/poll-device.php +++ b/poll-device.php @@ -31,7 +31,7 @@ while ($device = mysql_fetch_array($device_query)) { echo("Polling " . $device['hostname'] . " ( ".$device['device_id']." )\n\n"); unset($update); unset($update_query); unset($seperator); unset($version); unset($uptime); unset($features); - unset($location); unset($hardware); unset($sysDescr); + unset($location); unset($hardware); unset($sysDescr); unse$sysContact); $pingable = isPingable($device['hostname']);