From 9c20c56dbc1c8f5e25c2b507c6ab18097ae57fd8 Mon Sep 17 00:00:00 2001 From: Tim Date: Mon, 8 Aug 2011 13:19:07 +0530 Subject: Updated get-server-details code to also return the version of GlusterFS running. Added getGlusterVersion() function into Utils.py Added glusterFsVersion xml-tag into get_server_details.py. --- .../src/Utils.py | 10 ++++++++++ .../src/get_server_details.py | 1 + 2 files changed, 11 insertions(+) (limited to 'src') diff --git a/src/com.gluster.storage.management.gateway.scripts/src/Utils.py b/src/com.gluster.storage.management.gateway.scripts/src/Utils.py index a212f104..46e4cdd4 100644 --- a/src/com.gluster.storage.management.gateway.scripts/src/Utils.py +++ b/src/com.gluster.storage.management.gateway.scripts/src/Utils.py @@ -1074,3 +1074,13 @@ def getDeviceFormatLockFile(device): def getDeviceFormatOutputFile(device): return "/var/tmp/format_%s.out" % device.replace('/', '_') + +def getGlusterVersion(): + rv = runCommand("/usr/sbin/gluster --version", output=True) + if rv["Stderr"]: + return None + if rv["Status"] != 0: + return None + if not rv["Stdout"]: + return None + return rv["Stdout"].strip().split()[1] diff --git a/src/com.gluster.storage.management.gateway.scripts/src/get_server_details.py b/src/com.gluster.storage.management.gateway.scripts/src/get_server_details.py index f9c1652f..30ffac58 100755 --- a/src/com.gluster.storage.management.gateway.scripts/src/get_server_details.py +++ b/src/com.gluster.storage.management.gateway.scripts/src/get_server_details.py @@ -50,6 +50,7 @@ def getServerDetails(listall): serverTag.appendChild(responseDom.createTag("status", "ONLINE")) else: serverTag.appendChild(responseDom.createTag("status", "OFFLINE")) + serverTag.appendChild(responseDom.createTag("glusterFsVersion", Utils.getGlusterVersion())) serverTag.appendChild(responseDom.createTag("cpuUsage", str(cpu))) serverTag.appendChild(responseDom.createTag("totalMemory", str(convertKbToMb(meminfo['MemTotal'])))) serverTag.appendChild(responseDom.createTag("memoryInUse", str(convertKbToMb(meminfo['MemUsed'])))) -- cgit From 066c7158c6b91d3bea979f26b0fa6d2a03db0448 Mon Sep 17 00:00:00 2001 From: Tim Date: Mon, 8 Aug 2011 13:28:49 +0530 Subject: Added required functions in MMC Utils.py similar to individual server Utils.py Added getServerFqdn(), getGlusterVersion() function --- .../WebContent/scripts/Utils.py | 23 +++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/com.gluster.storage.management.gateway/WebContent/scripts/Utils.py b/src/com.gluster.storage.management.gateway/WebContent/scripts/Utils.py index aaef5afe..46e4cdd4 100644 --- a/src/com.gluster.storage.management.gateway/WebContent/scripts/Utils.py +++ b/src/com.gluster.storage.management.gateway/WebContent/scripts/Utils.py @@ -409,7 +409,11 @@ def getCpuUsageAvg(): if not (st1 and st2): return None delta = [st2[i] - st1[i] for i in range(len(st1))] - cpuPercent = sum(delta[:3]) / delta[3] * 100.0 + try: + cpuPercent = sum(delta[:3]) / delta[3] * 100.0 + except ZeroDivisionError, e: + log("failed to find cpu percentage:%s" % str(e)) + return None return str('%.4f' % cpuPercent) def getLoadavg(): @@ -448,6 +452,13 @@ def getInfinibandPortStatus(): return portkeys +def getServerFqdn(): + rv = runCommand("hostname --fqdn", output=True, root=True) + if not rv["Stderr"]: + return stripEmptyLines(rv["Stdout"]) + return socket.gethostname() + + def getServerCount(): try: return int(open(Globals.SERVER_COUNT_FILE).read().strip()) @@ -1063,3 +1074,13 @@ def getDeviceFormatLockFile(device): def getDeviceFormatOutputFile(device): return "/var/tmp/format_%s.out" % device.replace('/', '_') + +def getGlusterVersion(): + rv = runCommand("/usr/sbin/gluster --version", output=True) + if rv["Stderr"]: + return None + if rv["Status"] != 0: + return None + if not rv["Stdout"]: + return None + return rv["Stdout"].strip().split()[1] -- cgit