summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShireesh Anjal <anjalshireesh@gmail.com>2011-08-17 05:20:38 -0700
committerShireesh Anjal <anjalshireesh@gmail.com>2011-08-17 05:20:38 -0700
commitdf8ba9652d17c27849ec62bfb0511f7c20024af5 (patch)
treee484c1f5986a0df00f1d6da99e9fc2bc337240e4
parentd6d5d0e60c26209fe9051dcaba0e583635f0613f (diff)
parent2b69d8a557662510fbba144d5c91a70134f5099b (diff)
Merge pull request #242 from TimothyAsir/master
Code enhanced and added license information
-rwxr-xr-xsrc/com.gluster.storage.management.gateway.scripts/src/backend/clear_volume_directory.py18
-rwxr-xr-xsrc/com.gluster.storage.management.gateway.scripts/src/backend/create_volume_directory.py46
-rwxr-xr-xsrc/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_cpu_details.py34
-rwxr-xr-xsrc/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_memory_details.py50
-rwxr-xr-xsrc/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_net_details.py27
-rwxr-xr-xsrc/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py4
6 files changed, 58 insertions, 121 deletions
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/clear_volume_directory.py b/src/com.gluster.storage.management.gateway.scripts/src/backend/clear_volume_directory.py
index 029787e5..0f8248d8 100755
--- a/src/com.gluster.storage.management.gateway.scripts/src/backend/clear_volume_directory.py
+++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/clear_volume_directory.py
@@ -29,24 +29,22 @@ def main():
volumeDirectory = args[0]
if not os.path.exists(volumeDirectory):
- sys.stderr.write("Given volume directory path:%s does not exists" % volumeDirectory)
+ sys.stderr.write("Given volume directory path:%s does not exists\n" % volumeDirectory)
sys.exit(1)
+ # trim '/' at the end
+ if '/' == volumeDirectory[-1]:
+ volumeDirectory = volumeDirectory[:-1]
newVolumeDirectoryName = "%s_%s" % (volumeDirectory, time.time())
- rv = Utils.runCommand("mv -f %s %s" % (volumeDirectory, newVolumeDirectoryName), output=True, root=True)
- if rv["Stderr"]:
- sys.stderr.write(Utils.stripEmptyLines(rv["Stderr"]))
+ if Utils.runCommand("mv -f %s %s" % (volumeDirectory, newVolumeDirectoryName), root=True) != 0:
+ sys.stderr.write("Failed to rename volume directory\n")
sys.exit(2)
if not options.todelete:
sys.exit(0)
- rv = Utils.runCommand("rm -fr %s" % newVolumeDirectoryName, output=True, root=True)
- if rv["Stderr"]:
- sys.stderr.write(Utils.stripEmptyLines(rv["Stderr"]))
- sys.exit(3)
-
- sys.exit(0)
+ rv = Utils.runCommand("rm -fr %s" % newVolumeDirectoryName, root=True) != 0
+ sys.exit(rv)
if __name__ == "__main__":
main()
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/create_volume_directory.py b/src/com.gluster.storage.management.gateway.scripts/src/backend/create_volume_directory.py
index e295f249..66354412 100755
--- a/src/com.gluster.storage.management.gateway.scripts/src/backend/create_volume_directory.py
+++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/create_volume_directory.py
@@ -1,20 +1,8 @@
#!/usr/bin/python
-# Copyright (C) 2010 Gluster, Inc. <http://www.gluster.com>
-# This file is part of Gluster Storage Platform.
+# Copyright (C) 2011 Gluster, Inc. <http://www.gluster.com>
+# This file is part of Gluster Management Gateway.
#
-# Gluster Storage Platform is free software; you can redistribute it
-# and/or modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3 of
-# the License, or (at your option) any later version.
-#
-# Gluster Storage Platform is distributed in the hope that it will be
-# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see
-# <http://www.gnu.org/licenses/>.
+
import os
import sys
p1 = os.path.abspath(os.path.dirname(sys.argv[0]))
@@ -35,7 +23,7 @@ def createDirectory(disk, volumeName):
if not diskUuid:
Utils.log("failed to find disk:%s uuid" % disk)
rs.appendTagRoute("status.code", "-1")
- rs.appendTagRoute("status.message", "Error: Unable to find disk uuid")
+ rs.appendTagRoute("status.message", "Error: Failed to find disk uuid")
return rs.toprettyxml()
# Retrieving disk mount point using disk uuid
@@ -53,27 +41,17 @@ def createDirectory(disk, volumeName):
rs.appendTagRoute("status.code", "-2")
rs.appendTagRoute("status.message", "Volume directory already exists!")
return rs.toprettyxml()
-
- if not os.path.exists(volumeDirectory):
- command = ["sudo", "mkdir", volumeDirectory]
- rv = Utils.runCommandFG(command, stdout=True, root=True)
- message = Utils.stripEmptyLines(rv["Stdout"])
- if rv["Stderr"]:
- error = Utils.stripEmptyLines(rv["Stderr"])
- message += "Error: [%s]" % (error)
- Utils.log("failed to create volume directory %s, %s" % (volumeDirectory, error))
- rs.appendTagRoute("status.code", rv["Status"])
- rs.appendTagRoute("status.message", message)
- return rs.toprettyxml()
-
- if not rv["Status"]:
- rv["Status"] = "0"
- if rv["Status"] == "0":
- message = volumeDirectory
+
+ rv = Utils.runCommand("mkdir %s" % volumeDirectory, output=True, root=True)
+ if rv["Status"] != 0:
rs.appendTagRoute("status.code", rv["Status"])
- rs.appendTagRoute("status.message", message)
+ rs.appendTagRoute("status.message", "Failed to create volume directory")
return rs.toprettyxml()
+ rs.appendTagRoute("status.code", rv["Status"])
+ rs.appendTagRoute("status.message", volumeDirectory)
+ return rs.toprettyxml()
+
def main():
if len(sys.argv) != 3:
sys.stderr.write("usage: %s <disk name> <volume name>\n" % os.path.basename(sys.argv[0]))
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_cpu_details.py b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_cpu_details.py
index e60d7199..774f8e4e 100755
--- a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_cpu_details.py
+++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_cpu_details.py
@@ -14,10 +14,16 @@ if not p2 in sys.path:
from XmlHandler import ResponseXml
import Utils
-def getCpuData(period):
- cpuRrdFile = "/var/lib/rrd/cpu.rrd"
- rs = ResponseXml()
+CPU_RRD_FILE = "/var/lib/rrd/cpu.rrd"
+
+def main():
+ if len(sys.argv) != 2:
+ sys.stderr.write("usage: %s <PERIOD>\n" % os.path.basename(sys.argv[0]))
+ sys.exit(-1)
+
+ period = sys.argv[1]
+ rs = ResponseXml()
command = "rrdtool xport --start -%s \
DEF:cpuuser=%s:user:AVERAGE \
DEF:cpusystem=%s:system:AVERAGE \
@@ -29,26 +35,14 @@ def getCpuData(period):
CDEF:totalpct=userpct,systempct,+ \
XPORT:userpct:userpct \
XPORT:systempct:systempct \
- XPORT:totalpct:totalpct" % (period, cpuRrdFile, cpuRrdFile, cpuRrdFile)
+ XPORT:totalpct:totalpct" % (period, CPU_RRD_FILE, CPU_RRD_FILE, CPU_RRD_FILE)
rv = Utils.runCommand(command, output=True, root=True)
- message = Utils.stripEmptyLines(rv["Stdout"])
- if rv["Stderr"]:
- error = Utils.stripEmptyLines(rv["Stderr"])
- message += "Error: [%s]" % (error)
- Utils.log("failed to create RRD file for cpu usages %s" % file)
+ if rv["Status"] != 0:
rs.appendTagRoute("status.code", rv["Status"])
- rs.appendTagRoute("status.message", message)
- return rs.toxml()
- return rv["Stdout"]
-
-def main():
- if len(sys.argv) != 2:
- sys.stderr.write("usage: %s <period>\n" % os.path.basename(sys.argv[0]))
- sys.exit(-1)
-
- period = sys.argv[1]
- print getCpuData(period)
+ rs.appendTagRoute("status.message", "Failed to get RRD data of CPU")
+ print rs.toxml()
+ print rv["Stdout"]
sys.exit(0)
if __name__ == "__main__":
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_memory_details.py b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_memory_details.py
index a6dd4987..a9272b1f 100755
--- a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_memory_details.py
+++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_memory_details.py
@@ -1,20 +1,7 @@
#!/usr/bin/python
-# Copyright (C) 2010 Gluster, Inc. <http://www.gluster.com>
-# This file is part of Gluster Storage Platform.
+# Copyright (C) 2011 Gluster, Inc. <http://www.gluster.com>
+# This file is part of Gluster Management Gateway.
#
-# Gluster Storage Platform is free software; you can redistribute it
-# and/or modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3 of
-# the License, or (at your option) any later version.
-#
-# Gluster Storage Platform is distributed in the hope that it will be
-# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see
-# <http://www.gnu.org/licenses/>.
# Input command: get_rrd_memory_details.py 1hour
# OUTPUT as bellow:
@@ -54,8 +41,15 @@ import syslog
from XmlHandler import ResponseXml
import Utils
-def getMemData(period):
- memRrdFile = "/var/lib/rrd/mem.rrd"
+MEMORY_RRD_FILE = "/var/lib/rrd/mem.rrd"
+
+def main():
+ if len(sys.argv) != 2:
+ sys.stderr.write("usage: %s <PERIOD>\n" % os.path.basename(sys.argv[0]))
+ sys.exit(-1)
+
+ period = sys.argv[1]
+
rs = ResponseXml()
command = "rrdtool xport --start -%s \
DEF:free=%s:memfree:AVERAGE \
@@ -69,26 +63,14 @@ def getMemData(period):
XPORT:free:memoryFree \
XPORT:cache:memoryCache \
XPORT:buffer:memoryBuffer \
- XPORT:total:totalMemory" % (period, memRrdFile, memRrdFile, memRrdFile, memRrdFile)
+ XPORT:total:totalMemory" % (period, MEMORY_RRD_FILE, MEMORY_RRD_FILE, MEMORY_RRD_FILE, MEMORY_RRD_FILE)
rv = Utils.runCommand(command, output=True, root=True)
- message = Utils.stripEmptyLines(rv["Stdout"])
- if rv["Stderr"]:
- error = Utils.stripEmptyLines(rv["Stderr"])
- message += "Error: [%s]" % (error)
- Utils.log("failed to create RRD file for memory usages %s" % file)
+ if rv["Status"] != 0:
rs.appendTagRoute("status.code", rv["Status"])
- rs.appendTagRoute("status.message", message)
- return rs.toxml()
- return rv["Stdout"]
-
-def main():
- if len(sys.argv) != 2:
- sys.stderr.write("usage: %s <period>\n" % os.path.basename(sys.argv[0]))
- sys.exit(-1)
-
- period = sys.argv[1]
- print getMemData(period)
+ rs.appendTagRoute("status.message", "Failed to get RRD data of memory usage")
+ print rs.toxml()
+ print rv["Stdout"]
sys.exit(0)
if __name__ == "__main__":
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_net_details.py b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_net_details.py
index c319c888..f4a7a465 100755
--- a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_net_details.py
+++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_net_details.py
@@ -1,20 +1,8 @@
#!/usr/bin/python
-# Copyright (C) 2010 Gluster, Inc. <http://www.gluster.com>
-# This file is part of Gluster Storage Platform.
+# Copyright (C) 2011 Gluster, Inc. <http://www.gluster.com>
+# This file is part of Gluster Management Gateway.
#
-# Gluster Storage Platform is free software; you can redistribute it
-# and/or modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3 of
-# the License, or (at your option) any later version.
-#
-# Gluster Storage Platform is distributed in the hope that it will be
-# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
-# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see
-# <http://www.gnu.org/licenses/>.
+
import os
import sys
p1 = os.path.abspath(os.path.dirname(sys.argv[0]))
@@ -42,14 +30,11 @@ def main():
XPORT:received:received \
XPORT:transmitted:transmitted \
XPORT:total:total" % (period, device, device)
+
rv = Utils.runCommand(command, output=True, root=True)
- message = Utils.stripEmptyLines(rv["Stdout"])
- if rv["Stderr"]:
- error = Utils.stripEmptyLines(rv["Stderr"])
- message += "Error: [%s]" % (error)
- Utils.log("failed to get RRD information of device %s" % file)
+ if rv["Status"] != 0:
rs.appendTagRoute("status.code", rv["Status"])
- rs.appendTagRoute("status.message", message)
+ rs.appendTagRoute("status.message", "Failed to get RRD information of device %s" % device)
print rs.toxml()
print rv["Stdout"]
sys.exit(0)
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py
index ecbe1237..2b353f2a 100755
--- a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py
+++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_server_details.py
@@ -104,8 +104,8 @@ def getServerDetails(listall):
try:
diskDom = DiskUtils.getDiskDom()
except dbus.dbus_bindings.DBusException, e:
- sys.stderr.write("Failed to connect HAL to get device details. Please check if HAL services are running\n")
- Utils.log("Failed to connect HAL to get device details")
+ sys.stderr.write("%s. Please check if HAL services are running\n" % str(e))
+ Utils.log("failed to get disk details :%s" % str(e))
sys.exit(1)
if not diskDom:
sys.stderr.write("No disk found!")