34 lines
1.3 KiB
PHP
Raw Normal View History

<?php
use LibreNMS\RRD\RrdDefinition;
$toner_data = dbFetchRows('SELECT * FROM toner WHERE device_id = ?', array($device['device_id']));
foreach ($toner_data as $toner) {
echo 'Checking toner '.$toner['toner_descr'].'... ';
2016-10-14 18:14:18 -05:00
$raw_toner = snmp_get($device, $toner['toner_oid'], '-OUqnv');
$tonerperc = get_toner_levels($device, $raw_toner, $toner['toner_capacity']);
echo $tonerperc." %\n";
$tags = array(
'rrd_def' => RrdDefinition::make()->addDataset('toner', 'GAUGE', 0, 20000),
'rrd_name' => array('toner', $toner['toner_index']),
'rrd_oldname' => array('toner', $toner['toner_descr']),
'index' => $toner['toner_index'],
);
data_update($device, 'toner', $tags, $tonerperc);
2015-08-19 20:58:02 +00:00
2016-10-14 18:14:18 -05:00
// Log empty supplies (but only once)
if ($tonerperc == 0 && $toner['toner_current'] > 0) {
log_event('Toner ' . $toner['toner_descr'] . ' is empty', $device, 'toner', 5, $toner['toner_id']);
2016-10-14 18:14:18 -05:00
}
// Log toner swap
if ($tonerperc > $toner['toner_current']) {
log_event('Toner ' . $toner['toner_descr'] . ' was replaced (new level: ' . $tonerperc . '%)', $device, 'toner', 3, $toner['toner_id']);
}
2017-02-14 11:44:16 +00:00
dbUpdate(array('toner_current' => $tonerperc, 'toner_capacity' => $toner['toner_capacity']), 'toner', '`toner_id` = ?', array($toner['toner_id']));
}//end foreach