diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/xenmgr/lib/XendNode.py | 30 | ||||
-rw-r--r-- | tools/xenmgr/lib/server/SrvNode.py | 9 |
2 files changed, 25 insertions, 14 deletions
diff --git a/tools/xenmgr/lib/XendNode.py b/tools/xenmgr/lib/XendNode.py index 9be3d642bc..d293da8e77 100644 --- a/tools/xenmgr/lib/XendNode.py +++ b/tools/xenmgr/lib/XendNode.py @@ -7,15 +7,9 @@ """ +import os import Xc -class XendNodeInfo: - """Node information record. - """ - - def __init__(self): - pass - class XendNode: def __init__(self): @@ -45,6 +39,28 @@ class XendNode: #ret = self.xc.rrobin_global_set(slice) return ret + def info(self): + return self.nodeinfo() + self.physinfo() + + def nodeinfo(self): + (sys, host, rel, ver, mch) = os.uname() + return [['system', sys], + ['host', host], + ['release', rel], + ['version', ver], + ['machine', mch]] + + def physinfo(self): + pinfo = self.xc.physinfo() + info = [['cores', pinfo['cores']], + ['hyperthreads_per_core', pinfo['ht_per_core']], + ['cpu_mhz', pinfo['cpu_khz']/1000], + ['memory', pinfo['total_pages']/256], + ['free_memory', pinfo['free_pages']/256]] + return info + + + def instance(): global inst try: diff --git a/tools/xenmgr/lib/server/SrvNode.py b/tools/xenmgr/lib/server/SrvNode.py index 3c6168e337..d4411d5e5d 100644 --- a/tools/xenmgr/lib/server/SrvNode.py +++ b/tools/xenmgr/lib/server/SrvNode.py @@ -45,15 +45,10 @@ class SrvNode(SrvDir): self.print_path(req) req.write('<ul>') for d in self.info(): - req.write('<li> %10s: %s' % (d[0], d[1])) + req.write('<li> %10s: %s' % (d[0], str(d[1]))) req.write('</ul>') req.write('</body></html>') return '' def info(self): - (sys, host, rel, ver, mch) = os.uname() - return [['system', sys], - ['host', host], - ['release', rel], - ['version', ver], - ['machine', mch]] + return self.xn.info() |