68 lines
1.7 KiB
PHP
68 lines
1.7 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Observium
|
|
*
|
|
* This file is part of Observium.
|
|
*
|
|
* @package observium
|
|
* @subpackage poller
|
|
* @copyright (C) Adam Armstrong
|
|
*
|
|
*/
|
|
|
|
// FIXME - store state data in database
|
|
|
|
$table_rows = [];
|
|
|
|
$diskio_data = dbFetchRows("SELECT * FROM `ucd_diskio` WHERE `device_id` = ?", [$device['device_id']]);
|
|
|
|
if (count($diskio_data)) {
|
|
$diskio_cache = [];
|
|
$diskio_cache = snmpwalk_cache_oid($device, "diskIOEntry", $diskio_cache, "UCD-DISKIO-MIB");
|
|
|
|
//echo("Checking UCD DiskIO MIB: ");
|
|
|
|
foreach ($diskio_data as $diskio) {
|
|
$index = $diskio['diskio_index'];
|
|
|
|
$entry = $diskio_cache[$index];
|
|
|
|
//echo($diskio['diskio_descr'] . " ");
|
|
|
|
if (OBS_DEBUG > 1) {
|
|
print_vars($entry);
|
|
}
|
|
|
|
$rrd = "ucd_diskio-" . $diskio['diskio_descr'] . ".rrd";
|
|
|
|
rrdtool_create($device, $rrd, " \
|
|
DS:read:DERIVE:600:0:125000000000 \
|
|
DS:written:DERIVE:600:0:125000000000 \
|
|
DS:reads:DERIVE:600:0:125000000000 \
|
|
DS:writes:DERIVE:600:0:125000000000 ");
|
|
|
|
rrdtool_update($device, $rrd, [$entry['diskIONReadX'], $entry['diskIONWrittenX'], $entry['diskIOReads'], $entry['diskIOWrites']]);
|
|
|
|
$table_row = [];
|
|
$table_row[] = $diskio['diskio_descr'];
|
|
$table_row[] = $diskio['diskio_index'];
|
|
$table_row[] = $entry['diskIONReadX'];
|
|
$table_row[] = $entry['diskIONWrittenX'];
|
|
$table_row[] = $entry['diskIOReads'];
|
|
$table_row[] = $entry['diskIOWrites'];
|
|
$table_rows[] = $table_row;
|
|
unset($table_row);
|
|
|
|
}
|
|
|
|
//echo(PHP_EOL);
|
|
}
|
|
|
|
$headers = ['%WLabel%n', '%WIndex%n', '%WRead%n', '%WWritten%n', '%WReads%n', '%WWrites%n'];
|
|
print_cli_table($table_rows, $headers);
|
|
|
|
unset($diskio_data, $diskio_cache);
|
|
|
|
// EOF
|