summaryrefslogtreecommitdiffstats
path: root/src/org.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py
diff options
context:
space:
mode:
authorShireesh Anjal <shireesh@gluster.com>2011-11-25 20:13:35 +0530
committerShireesh Anjal <shireesh@gluster.com>2011-11-25 20:13:35 +0530
commit1142b0e41de39010de7845cf70d71dbb001fc1dc (patch)
tree3513487f65c1a7df47996bd2852393aceaac1b8a /src/org.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py
parent92c52d8edf285945d31e446503fc742fde9dcc49 (diff)
Renamed projects / packages com.gluster.* to org.gluster.*
Diffstat (limited to 'src/org.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py')
-rwxr-xr-xsrc/org.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/org.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py b/src/org.gluster.storage.management.gateway.scripts/src/backend/get_brick_status.py
new file mode 100755
index 00000000..b72321d7
--- /dev/null
+++ b/src/org.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"
+ sys.exit(0)
+
+ lines = Utils.readFile(pidFile)
+ if not lines:
+ print "UNKNOWN"
+ sys.exit(0)
+ try:
+ pidString = lines[0]
+ os.getpgid(int(pidString))
+ print "ONLINE"
+ 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()