1 | <?php |
||
2 | |||
3 | $diskio_array = snmpwalk_cache_oid($device, 'diskIOEntry', [], 'UCD-DISKIO-MIB'); |
||
4 | $valid_diskio = []; |
||
5 | if (is_array($diskio_array)) { |
||
0 ignored issues
–
show
introduced
by
Loading history...
|
|||
6 | foreach ($diskio_array as $index => $entry) { |
||
7 | if (($entry['diskIONRead'] > '0' || $entry['diskIONWritten'] > '0') && is_disk_valid($entry, $device) === true) { |
||
8 | d_echo("$index " . $entry['diskIODevice'] . "\n"); |
||
9 | |||
10 | if (dbFetchCell('SELECT COUNT(*) FROM `ucd_diskio` WHERE `device_id` = ? AND `diskio_index` = ? and `diskio_descr` = ?', [$device['device_id'], $index, $entry['diskIODevice']]) == '0') { |
||
11 | $inserted = dbInsert(['device_id' => $device['device_id'], 'diskio_index' => $index, 'diskio_descr' => $entry['diskIODevice']], 'ucd_diskio'); |
||
12 | echo '+'; |
||
13 | d_echo($sql . " - $inserted inserted "); |
||
14 | } else { |
||
15 | echo '.'; |
||
16 | // FIXME Need update code here! |
||
17 | } |
||
18 | |||
19 | $valid_diskio[$index] = $entry['diskIODevice']; |
||
20 | } //end if |
||
21 | } //end foreach |
||
22 | } //end if |
||
23 | |||
24 | // Remove diskio entries which weren't redetected here |
||
25 | $sql = "SELECT * FROM `ucd_diskio` where `device_id` = '" . $device['device_id'] . "'"; |
||
26 | |||
27 | d_echo($valid_diskio); |
||
28 | |||
29 | foreach (dbFetchRows($sql) as $test) { |
||
30 | d_echo($test['diskio_index'] . ' -> ' . $test['diskio_descr'] . "\n"); |
||
31 | |||
32 | if ($valid_diskio[$test['diskio_index']] !== $test['diskio_descr']) { |
||
33 | echo '-'; |
||
34 | dbDelete('ucd_diskio', '`diskio_id` = ?', [$test['diskio_id']]); |
||
35 | } |
||
36 | } |
||
37 | |||
38 | unset($valid_diskio); |
||
39 | echo "\n"; |
||
40 |