summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTim <timothyasir@gluster.com>2011-08-08 20:22:57 +0530
committerTim <timothyasir@gluster.com>2011-08-08 20:22:57 +0530
commit02f6e5d014eda5cd33e08ab5e5260ebd69f864de (patch)
tree953c13a84c370959dd7b32176c0f9ea79dec05db /src
parent16032dd64f349373beb62ac77eee4d675d9173f7 (diff)
Enhanced DiskUtils.py to get disk used space.
Added getDeviceUsedSpace function into DiskUtils.py Updated DiskUtils.py to fetch disk used space only if the device is mounted.
Diffstat (limited to 'src')
-rw-r--r--src/com.gluster.storage.management.gateway.scripts/src/DiskUtils.py39
1 files changed, 17 insertions, 22 deletions
diff --git a/src/com.gluster.storage.management.gateway.scripts/src/DiskUtils.py b/src/com.gluster.storage.management.gateway.scripts/src/DiskUtils.py
index aa77cebb..341c9083 100644
--- a/src/com.gluster.storage.management.gateway.scripts/src/DiskUtils.py
+++ b/src/com.gluster.storage.management.gateway.scripts/src/DiskUtils.py
@@ -178,6 +178,9 @@ def getRaidDisk():
raid['MountPoint'] = getDeviceMountPoint(device)
if raid['MountPoint']:
raid['Type'] = "DATA"
+ raid['SpaceInUse'] = getDeviceUsedSpace(device)
+ else:
+ raid['SpaceInUse'] = None
rv = Utils.runCommand("blkid -c /dev/null %s" % (device), output=True, root=True)
raid['Uuid'] = None
raid['FsType'] = None
@@ -191,17 +194,6 @@ def getRaidDisk():
if len(words) > 2:
raid['Uuid'] = words[1].split("UUID=")[-1].split('"')[1]
raid['FsType'] = words[2].split("TYPE=")[-1].split('"')[1]
-
- used = 0
- rv = Utils.runCommand("df %s" % (device), output=True, root=True)
- if rv["Status"] == 0:
- try:
- used = long(rv["Stdout"].split("\n")[1].split()[2]) / 1024
- except IndexError:
- pass
- except ValueError:
- pass
- raid['SpaceInUse'] = used
raid['Disks'] = [x.split('[')[0] for x in tokens[4:]]
raid['Size'] = float(array[1].split()[0]) / 1024.0
raidList[tokens[0]] = raid
@@ -257,17 +249,6 @@ def getDiskInfo(diskDeviceList=None):
disk["MountPoint"] = None
disk["ReadOnlyAccess"] = None
- spaceInUse = None
- rv = Utils.runCommand("df %s" % (disk["Device"]), output=True, root=True)
- if rv["Status"] == 0:
- try:
- spaceInUse = long(rv["Stdout"].split("\n")[1].split()[2]) / 1024
- except IndexError:
- pass
- except ValueError:
- pass
- disk["SpaceInUse"] = spaceInUse
-
partitionUdiList = halManager.FindDeviceStringMatch("info.parent", udi)
if isDiskInFormatting(disk["Device"]):
disk["Status"] = "INITIALIZING"
@@ -285,6 +266,11 @@ def getDiskInfo(diskDeviceList=None):
disk["FsType"] = mounts[disk["Device"]]["FsType"]
disk["MountPoint"] = mounts[disk["Device"]]["MountPoint"]
+ if disk["MountPoint"]:
+ disk["SpaceInUse"] = getDeviceUsedSpace(disk["Device"])
+ else:
+ disk["SpaceInUse"] = None
+
partitionList = []
diskSpaceInUse = 0
for partitionUdi in partitionUdiList:
@@ -463,6 +449,15 @@ def getMountPointByUuid(partitionUuid):
return entry.split()[1]
return None
+def getDeviceUsedSpace(device):
+ rv = Utils.runCommand("df -kl %s" % (device), output=True, root=True)
+ if rv["Status"] == 0:
+ try:
+ return long(rv["Stdout"].split("\n")[1].split()[2]) / 1024
+ except IndexError:
+ pass
+ except ValueError:
+ pass
def getDiskSizeInfo(partition):
# get values from df output