mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-11-03 14:01:15 +02:00
Send compute usage via in the compute.updated notification
Ref https://github.com/GNS3/gns3-gui/issues/1261
This commit is contained in:
5 files changed
+77
-5
No files matched your search
@@ -89,6 +89,8 @@ class Compute:
|
||||
self._set_auth(user, password)
|
||||
self._session = aiohttp.ClientSession()
|
||||
self._version = None
|
||||
self._cpu_usage_percent = None
|
||||
self._memory_usage_percent = None
|
||||
self.name = name
|
||||
# Websocket for notifications
|
||||
self._ws = None
|
||||
@@ -228,6 +230,14 @@ class Compute:
|
||||
def password(self, value):
|
||||
self._set_auth(self._user, value)
|
||||
|
||||
@property
|
||||
def cpu_usage_percent(self):
|
||||
return self._cpu_usage_percent
|
||||
|
||||
@property
|
||||
def memory_usage_percent(self):
|
||||
return self._memory_usage_percent
|
||||
|
||||
def __json__(self, topology_dump=False):
|
||||
"""
|
||||
:param topology_dump: Filter to keep only properties require for saving on disk
|
||||
@@ -247,7 +257,9 @@ class Compute:
|
||||
"host": self._host,
|
||||
"port": self._port,
|
||||
"user": self._user,
|
||||
"connected": self._connected
|
||||
"connected": self._connected,
|
||||
"cpu_usage_percent": self._cpu_usage_percent,
|
||||
"memory_usage_percent": self._memory_usage_percent
|
||||
}
|
||||
|
||||
@asyncio.coroutine
|
||||
@@ -307,7 +319,13 @@ class Compute:
|
||||
msg = json.loads(response.data)
|
||||
action = msg.pop("action")
|
||||
event = msg.pop("event")
|
||||
self._controller.notification.dispatch(action, event, compute_id=self.id)
|
||||
|
||||
if action == "ping":
|
||||
self._cpu_usage_percent = event["cpu_usage_percent"]
|
||||
self._memory_usage_percent = event["memory_usage_percent"]
|
||||
self._controller.notification.emit("compute.updated", self.__json__())
|
||||
else:
|
||||
self._controller.notification.dispatch(action, event, compute_id=self.id)
|
||||
yield from self._ws.close()
|
||||
self._ws = None
|
||||
|
||||
|
||||
Reference in new issue
Block a user