mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
Dynamic_discovery_get_value in can_skip_sensor to use all oids in skip_values (#9495)
* Use of dynamic_discovery_get_value in can_skip_sensor in order to use all available oids in skip_values * Use LibreNMS\Device\YamlDiscovery code instead of keeping duplicated function can_skip_sensor * Fix Travis errors
This commit is contained in:
@@ -90,7 +90,7 @@ class YamlDiscovery
|
||||
}
|
||||
}
|
||||
|
||||
if (static::canSkipItem($current_data['value'], $current_data, $group_options, $snmp_data)) {
|
||||
if (static::canSkipItem($current_data['value'], $index, $current_data, $group_options, $snmp_data)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -227,15 +227,15 @@ class YamlDiscovery
|
||||
* @param array $item_snmp_data The pre-cache data array
|
||||
* @return bool
|
||||
*/
|
||||
private static function canSkipItem($value, $yaml_item_data, $group_options, $item_snmp_data = array())
|
||||
public static function canSkipItem($value, $index, $yaml_item_data, $group_options, $pre_cache = array())
|
||||
{
|
||||
$skip_values = array_replace((array)$group_options['skip_values'], (array)$yaml_item_data['skip_values']);
|
||||
|
||||
foreach ($skip_values as $skip_value) {
|
||||
if (is_array($skip_value) && $item_snmp_data) {
|
||||
if (is_array($skip_value) && $pre_cache) {
|
||||
// Dynamic skipping of data
|
||||
$op = isset($skip_value['op']) ? $skip_value['op'] : '!=';
|
||||
$tmp_value = $item_snmp_data[$skip_value['oid']];
|
||||
$tmp_value = static::getValueFromData($skip_value['oid'], $index, $yaml_item_data, $pre_cache);
|
||||
if (compare_var($tmp_value, $skip_value['value'], $op)) {
|
||||
return true;
|
||||
}
|
||||
|
Reference in New Issue
Block a user