added BootmanSequenceRecord to allow bootman sequence to be modified at
[monitor.git] / statistics / harvest_rt.py
diff --git a/statistics/harvest_rt.py b/statistics/harvest_rt.py
new file mode 100755 (executable)
index 0000000..f3940e0
--- /dev/null
@@ -0,0 +1,46 @@
+#!/usr/bin/python
+
+import os
+import time
+from datetime import datetime, timedelta
+import sys
+
+def popen(cmdstr):
+       f = os.popen(cmdstr)
+       ret = f.read()
+       return ret
+
+def datetime_fromstr(str):
+       if '-' in str:
+               try:
+                       tup = time.strptime(str, "%Y-%m-%d")
+               except:
+                       tup = time.strptime(str, "%Y-%m-%d-%H:%M")
+       elif '/' in str:
+               tup = time.strptime(str, "%m/%d/%Y")
+       else:
+               tup = time.strptime(str, "%m/%d/%Y")
+       ret = datetime.fromtimestamp(time.mktime(tup))
+       return ret
+
+
+def main():
+       queue = sys.argv[1]
+       d1 = datetime_fromstr(sys.argv[2])
+       iterations = int(sys.argv[3])
+       i = 0
+       while i < iterations:
+               d1_s = d1.strftime("%Y-%m-%d")
+               d2 = d1 + timedelta(30)
+               d2_s = d2.strftime("%Y-%m-%d")
+               query = "Queue='%s' and " % queue 
+               query = query + "Told > '%s' and Told < '%s'" % (d1_s, d2_s)
+               cmd = """rt ls -t ticket "%s" | grep -v "No matching" | wc -l  """ % query
+               print cmd
+               ret = popen(cmd)
+               print d1_s, ",", ret[:-1]
+               d1=d2
+               i += 1
+
+if __name__ == "__main__":
+       main()