Issues (2963)

discovery/sensors/temperature/akcp.inc.php (1 issue)

1
<?php
2
3
$oids = snmpwalk_cache_oid($device, 'sensorProbeTempTable', [], 'SPAGENT-MIB');
4
d_echo($oids . "\n");
0 ignored issues
show
Are you sure $oids of type array can be used in concatenation? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

4
d_echo(/** @scrutinizer ignore-type */ $oids . "\n");
Loading history...
5
6
foreach ($oids as $index => $entry) {
7
    if ($entry['sensorProbeTempOnline'] == 'online') {
8
        $scale = $entry['sensorProbeTempDegreeType'] == 'fahr' ? 'fahrenheit' : $entry['sensorProbeTempDegreeType'];
9
10
        if (isset($entry['sensorProbeTempDegreeRaw'])) {
11
            $oid = ".1.3.6.1.4.1.3854.1.2.2.1.16.1.14.$index";
12
            $divisor = 10;
13
            $value = $entry['sensorProbeTempDegreeRaw'] / $divisor;
14
        } else {
15
            $oid = ".1.3.6.1.4.1.3854.1.2.2.1.16.1.3.$index";
16
            $divisor = 1;
17
            $value = $entry['sensorProbeTempDegree'];
18
        }
19
20
        discover_sensor(
21
            $valid['sensor'],
22
            'temperature',
23
            $device,
24
            $oid,
25
            $index,
26
            'akcp',
27
            $entry['sensorProbeTempDescription'],
28
            $divisor,
29
            1,
30
            fahrenheit_to_celsius($entry['sensorProbeTempLowCritical'], $scale),
31
            fahrenheit_to_celsius($entry['sensorProbeTempLowWarning'], $scale),
32
            fahrenheit_to_celsius($entry['sensorProbeTempHighWarning'], $scale),
33
            fahrenheit_to_celsius($entry['sensorProbeTempHighCritical'], $scale),
34
            fahrenheit_to_celsius($value, $scale),
35
            'snmp',
36
            null,
37
            null,
38
            $scale == 'fahrenheit' ? 'fahrenheit_to_celsius' : null
39
        );
40
    }
41
}
42