1 | <?php |
||
2 | |||
3 | switch ($device['sysObjectID']) { |
||
4 | /** |
||
5 | * Dell Powerconnect 5548 |
||
6 | * Operating Temperature: 0º C to 45º C |
||
7 | */ |
||
8 | case '.1.3.6.1.4.1.674.10895.3031': |
||
9 | $temperature = trim(snmp_get($device, '.1.3.6.1.4.1.89.53.15.1.9.1', '-Ovq')); |
||
10 | discover_sensor($valid['sensor'], 'temperature', $device, '.1.3.6.1.4.1.89.53.15.1.9.1', 0, 'powerconnect', 'Internal Temperature', '1', '1', '0', null, null, '45', $temperature); |
||
11 | break; |
||
12 | /** |
||
13 | * Dell Powerconnect 3548 |
||
14 | * Operating Temperature: 0º C to 45º C |
||
15 | */ |
||
16 | case '.1.3.6.1.4.1.674.10895.3017': |
||
17 | $temperature = trim(snmp_get($device, '.1.3.6.1.4.1.89.53.15.1.9.1', '-Ovq')); |
||
18 | discover_sensor($valid['sensor'], 'temperature', $device, '.1.3.6.1.4.1.89.53.15.1.9.1', 0, 'powerconnect', 'Internal Temperature', '1', '1', '0', null, null, '45', $temperature); |
||
19 | break; |
||
20 | /** |
||
21 | * Dell Powerconnect 3548P |
||
22 | * Operating Temperature: 0º C to 45º C |
||
23 | */ |
||
24 | case '.1.3.6.1.4.1.674.10895.3019': |
||
25 | $temperature = trim(snmp_get($device, '.1.3.6.1.4.1.89.53.15.1.9.1', '-Ovq')); |
||
26 | discover_sensor($valid['sensor'], 'temperature', $device, '.1.3.6.1.4.1.89.53.15.1.9.1', 0, 'powerconnect', 'Internal Temperature', '1', '1', '0', null, null, '45', $temperature); |
||
27 | break; |
||
28 | default: |
||
29 | /** |
||
30 | * Default Temperature Discovery |
||
31 | * Operating Temperature: 0º C to 45º C |
||
32 | */ |
||
33 | $temperature = snmp_get($device, 'boxServicesTempSensorTemperature.0', '-Ovq', 'FASTPATH-BOXSERVICES-PRIVATE-MIB'); |
||
34 | if (is_numeric($temperature)) { |
||
35 | discover_sensor($valid['sensor'], 'temperature', $device, '.1.3.6.1.4.1.674.10895.5000.2.6132.1.1.43.1.8.1.4.0', 0, 'powerconnect', 'Internal Temperature', '1', '1', '0', null, null, '45', $temperature); |
||
36 | } |
||
37 | } |
||
38 | |||
39 | $temps = snmp_walk($device, '.1.3.6.1.4.1.674.10895.5000.2.6132.1.1.43.1.8.1.5', '-Osqn'); |
||
40 | //This will return at least 4 OIDs (multiplied by the number of switches if stacked) and associated values for various temperatures |
||
41 | |||
42 | $counter = 0; |
||
43 | |||
44 | foreach (explode("\n", $temps) as $i => $t) { |
||
45 | $t = explode(' ', $t); |
||
46 | $oid = $t[0]; |
||
47 | $val = $t[1]; |
||
48 | |||
49 | if (substr($oid, -1) == '1') { |
||
50 | // This code will only pull CPU temp for each stack member, but there is no reason why the additional values couldn't be graphed |
||
51 | $counter = $counter + 1; |
||
52 | discover_sensor($valid['sensor'], 'temperature', $device, $oid, $counter, 'dnos', 'Unit ' . $counter . ' CPU temperature', '1', '1', null, null, null, null, $val); |
||
53 | } |
||
54 | } |
||
55 | |||
56 | // Force10 S-Series |
||
57 | // F10-S-SERIES-CHASSIS-MIB::chStackUnitTemp.1 = Gauge32: 47 |
||
58 | // F10-S-SERIES-CHASSIS-MIB::chStackUnitModelID.1 = STRING: S25-01-GE-24V |
||
59 | echo 'FTOS C-Series '; |
||
60 | |||
61 | $oids = snmpwalk_cache_oid($device, 'chStackUnitTemp', [], 'F10-S-SERIES-CHASSIS-MIB', 'ftos'); |
||
62 | $oids = snmpwalk_cache_oid($device, 'chStackUnitSysType', $oids, 'F10-S-SERIES-CHASSIS-MIB', 'ftos'); |
||
63 | |||
64 | if (is_array($oids)) { |
||
0 ignored issues
–
show
introduced
by
Loading history...
|
|||
65 | foreach ($oids as $index => $entry) { |
||
66 | $descr = 'Unit ' . $index . ' ' . $entry['chStackUnitSysType']; |
||
67 | $oid = '.1.3.6.1.4.1.6027.3.10.1.2.2.1.14.' . $index; |
||
68 | $current = $entry['chStackUnitTemp']; |
||
69 | discover_sensor($valid['sensor'], 'temperature', $device, $oid, $index, 'ftos-sseries', $descr, '1', '1', null, null, null, null, $current); |
||
70 | } |
||
71 | } |
||
72 |