diff options
| author | Tim <timothyasir@gluster.com> | 2011-08-17 17:19:44 +0530 |
|---|---|---|
| committer | Tim <timothyasir@gluster.com> | 2011-08-17 17:19:44 +0530 |
| commit | 9cc34dcbb9b162109418522d1c912d394f07ce0e (patch) | |
| tree | 945103dd63ff6b11c572615aebbd06c76339a2e5 /src/com.gluster.storage.management.gateway.scripts | |
| parent | 008635552ac7698219e75b9730d9c8a7523a5f13 (diff) | |
Enhanced error handling in get_rrd_cpu_details.py
Diffstat (limited to 'src/com.gluster.storage.management.gateway.scripts')
| -rwxr-xr-x | src/com.gluster.storage.management.gateway.scripts/src/backend/get_rrd_cpu_details.py | 34 |
1 files changed, 14 insertions, 20 deletions
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__": |
