@staticmethod
def _get_eth_port_value(metric, data):
    """
        function that returns the data from the managed object
        :param metric:
        :param data:
        :return:
        """
    if metric == 'network.eth.tx.rate':
        return float(float(data.EtherTxStats.total_bytes_delta) / 60 * 8 / 
            1000000000)
    elif metric == 'network.eth.rx.rate':
        return float(float(data.EtherRxStats.total_bytes_delta) / 60 * 8 / 
            1000000000)
    elif metric == 'network.eth.pause.recv':
        return float(data.EtherPauseStats.recv_pause_delta)
    elif metric == 'network.eth.pause.resets':
        return float(data.EtherPauseStats.resets_delta)
    elif metric == 'network.eth.pause.xmit':
        return float(data.EtherPauseStats.xmit_pause_delta)
    elif metric == 'network.eth.err.xmit':
        return float(data.EtherErrStats.xmit_delta)
    elif metric == 'network.eth.err.recv':
        return float(data.EtherErrStats.xmit_delta)
    elif metric == 'network.eth.link.speed':
        return float(data.oper_speed.replace('gbps', ''))
    else:
        return None
