def getNetUsage(self,instance):
devices = []
dev_usage = []
tree = ElementTree.fromstring(self.getInsXMLDesc(instance, flag=1))
if instance.state()[0] == 1:
tree = ElementTree.fromstring(self.getInsXMLDesc(instance, flag=1))
for target in tree.findall("devices/interface/target"):
devices.append(target.get("dev"))
for i, dev in enumerate(devices):
rx_use_ago = instance.interfaceStats(dev)[0]
tx_use_ago = instance.interfaceStats(dev)[4]
time.sleep(1)
rx_use_now = instance.interfaceStats(dev)[0]
tx_use_now = instance.interfaceStats(dev)[4]
rx_diff_usage = (rx_use_now - rx_use_ago) * 8
tx_diff_usage = (tx_use_now - tx_use_ago) * 8
dev_usage.append({'dev': i, 'rx': rx_diff_usage, 'tx': tx_diff_usage})
else:
for i, dev in enumerate(self.get_net_device(instance)):
dev_usage.append({'dev': i, 'rx': 0, 'tx': 0})
return dev_usage
评论列表
文章目录