def getResourceUsage(self): disk = 0 memory = 0 ports = 1 if self.state == State.STARTED else 0 if self.host: disk = repy.getDiskUsage(self.host, self.id) memory = repy.getMemoryUsage(self.host, self.id) traffic = 0 if self.state == State.STARTED: for iface in self.interfaceSetAll(): dev = self.interfaceDevice(iface) traffic += ifaceutil.getRxBytes(self.host, dev) traffic += ifaceutil.getTxBytes(self.host, dev) return {"disk": disk, "memory": memory, "ports": ports, "traffic": traffic}
def getResourceUsage(self): external = 0 traffic = 0 for con in self.connectionSetAll(): if con.interface.device.state == State.STARTED: external += 1 dev = con.interface.device if dev.host and dev.state == State.STARTED: iface = dev.upcast().interfaceDevice(con.interface) try: traffic += ifaceutil.getRxBytes(dev.host, iface) + ifaceutil.getTxBytes(dev.host, iface) except: pass return {"external": external, "traffic": traffic}
def getResourceUsage(self): disk = tinc.estimateDiskUsage(len(self.connectionSetAll())) if self.state != State.CREATED else 0 memory = tinc.estimateMemoryUsage(len(self.connectionSetAll())) if self.state == State.STARTED else 0 ports = len(self.connectionSetAll()) if self.state == State.STARTED else 0 traffic = 0 for con in self.connectionSetAll(): dev = con.interface.device if dev.host and dev.state == State.STARTED: iface = dev.upcast().interfaceDevice(con.interface) try: traffic += ifaceutil.getRxBytes(dev.host, iface) + ifaceutil.getTxBytes(dev.host, iface) except: pass return {"disk": disk, "memory": memory, "ports": ports, "traffic": traffic}
def getResourceUsage(self): traffic = 0 disk = 0 memory = 0 ports = 1 if self.state == State.STARTED else 0 if self.host and self.getVmid(): disk = qm.getDiskUsage(self.host, self.getVmid()) memory = qm.getMemoryUsage(self.host, self.getVmid()) if self.state == State.STARTED: for iface in self.interfaceSetAll(): try: dev = self.interfaceDevice(iface) traffic += ifaceutil.getRxBytes(self.host, dev) traffic += ifaceutil.getTxBytes(self.host, dev) except: #might fail if VM is not actually started self._changeState(self.getState()) return {"disk": disk, "memory": memory, "ports": ports, "traffic": traffic}