diff --git a/src/etc/inc/interfaces.lib.inc b/src/etc/inc/interfaces.lib.inc index 3832c7be6..93b90997f 100644 --- a/src/etc/inc/interfaces.lib.inc +++ b/src/etc/inc/interfaces.lib.inc @@ -409,6 +409,18 @@ function legacy_interfaces_details($intf = null) $result[$current_interface]['sfp']['part_number'] = $matches[2]; $result[$current_interface]['sfp']['serial_number'] = $matches[3]; $result[$current_interface]['sfp']['manufacturing_date'] = $matches[4]; + } elseif ( + isset($result[$current_interface]['sfp']) && + preg_match("/module temperature:\s+(.*)\s+voltage:\s+(.*)Volts/", $line, $matches) + ) { + $result[$current_interface]['sfp']['temperature'] = $matches[1]; + $result[$current_interface]['sfp']['voltage'] = $matches[2]; + } elseif ( + isset($result[$current_interface]['sfp']) && + preg_match("/lane\s+(.*):\s+RX power:\s+(.*)\s+TX bias:\s+(.*)/", $line, $matches) + ) { + $result[$current_interface]['sfp'][sprintf('lane_%s_rx_power', $matches[1])] = $matches[2]; + $result[$current_interface]['sfp'][sprintf('lane_%s_tx_bias', $matches[1])] = $matches[3]; } elseif (preg_match("/status: (.*)$/", $line, $matches)) { $result[$current_interface]['status'] = $matches[1]; } elseif (preg_match("/channel (\S*)/", $line, $matches)) {