summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py
diff options
context:
space:
mode:
authorTim <timothyasir@gluster.com>2011-08-10 17:04:12 +0530
committerShireesh Anjal <shireesh@gluster.com>2011-08-10 18:48:55 +0530
commitf92d1a0524b7c7cf4aee9f736f6833d29a163a8b (patch)
tree3b3f079a85b4a8658578183ac876d138632de765 /src/com.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py
parentc34d9abeefcae4ba87cc6b54eed8644d37714c8a (diff)
Restructured backend gateway scripts
Diffstat (limited to 'src/com.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py')
-rwxr-xr-xsrc/com.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py
new file mode 100755
index 00000000..afc15f3a
--- /dev/null
+++ b/src/com.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py
@@ -0,0 +1,46 @@
+#!/usr/bin/python
+# Copyright (C) 2011 Gluster, Inc. <http://www.gluster.com>
+# This file is part of Gluster Management Console.
+#
+
+import os
+import sys
+p1 = os.path.abspath(os.path.dirname(sys.argv[0]))
+p2 = "%s/common" % os.path.dirname(p1)
+if not p1 in sys.path:
+ sys.path.append(p1)
+if not p2 in sys.path:
+ sys.path.append(p2)
+import Utils
+
+def main():
+ if len(sys.argv) != 3:
+ sys.stderr.write("usage: %s VOLUME_NAME BRICK_NAME\n" % os.path.basename(sys.argv[0]))
+ sys.exit(-1)
+
+ volumeName = sys.argv[1]
+ brickName = sys.argv[2]
+ pidFile = "/etc/glusterd/vols/%s/run/%s.pid" % (volumeName, brickName.replace(":", "").replace("/", "-"))
+
+ if not os.path.exists(pidFile):
+ print "OFFLINE"
+ else:
+ try:
+ fp = open(pidFile)
+ pidString = fp.readline()
+ fp.close()
+ os.getpgid(int(pidString))
+ print "ONLINE"
+ except IOError, e:
+ Utils.log("failed to open file %s: %s" % (pidFile, str(e)))
+ print "UNKNOWN"
+ except ValueError, e:
+ Utils.log("invalid pid %s in file %s: %s" % (pidString, pidFile, str(e)))
+ print "UNKNOWN"
+ except OSError, e:
+ #Utils.log("failed to get process detail of pid %s: %s" % (pidString, str(e)))
+ print "OFFLINE"
+ sys.exit(0)
+
+if __name__ == "__main__":
+ main()