/dev/null"); echo(" done.\n"); foreach (explode("\n",$results) as $row) { list($desc,$value,$type,$status) = explode(',',$row); $ipmi_sensor[$desc][$config['ipmi_unit'][$type]]['value'] = $value; $ipmi_sensor[$desc][$config['ipmi_unit'][$type]]['unit'] = $type; } foreach ($ipmi_rows as $ipmisensors) { echo("Updating IPMI sensor " . $ipmisensors['sensor_descr'] . "... "); $sensor = $ipmi_sensor[$ipmisensors['sensor_descr']][$ipmisensors['sensor_class']]['value']; $unit = $ipmi_sensor[$ipmisensors['sensor_descr']][$ipmisensors['sensor_class']]['unit']; $rrd_file = get_sensor_rrd($device, $ipmisensors); ## FIXME - sensor name format change 2011/04/26 - remove this in $amount_of_time. ## We don't want to reduce performance forever because douchebags don't svn up! $old_rrd_file = $config['rrd_dir'] . "/" . $device['hostname'] . "/" . safename($ipmisensors['sensor_class'].'-'.$ipmisensors['sensor_type'].'-'.$ipmisensors['sensor_index'] . ".rrd"); if (is_file($old_rrd_file)) { rename($old_rrd_file, $rrd_file); } if (!is_file($rrd_file)) { rrdtool_create($rrd_file,"--step 300 \ DS:sensor:GAUGE:600:-20000:20000 ".$config['rrd_rra']); } echo($sensor . " $unit\n"); rrdtool_update($rrd_file,"N:$sensor"); ## FIXME warnings in event & mail not done here yet! dbUpdate(array('sensor_current' => $sensor), 'sensors', 'poller_type = ? AND sensor_class = ? AND sensor_id = ?', array('ipmi', $ipmisensors['sensor_class'], $ipmisensors['sensor_id'])); } unset($ipmi_sensor); } ?>