From 92f7edf33be485a454edf601736176bef7d5bb05 Mon Sep 17 00:00:00 2001 From: Gustavo Duarte Date: Thu, 27 Dec 2012 04:55:21 +0000 Subject: fix time units in reports --- diff --git a/build/lib.linux-x86_64-2.7/stats_consolidation/db.py b/build/lib.linux-x86_64-2.7/stats_consolidation/db.py index 68444f2..84a9234 100644 --- a/build/lib.linux-x86_64-2.7/stats_consolidation/db.py +++ b/build/lib.linux-x86_64-2.7/stats_consolidation/db.py @@ -217,17 +217,22 @@ class DB_Stats: except mysql.connector.Error as err: print("CONNECT FAIL {}".format (err)) - def most_activity_used (self): + def most_activity_used (self, start, end): uptime_last=0 + activity_name='' try: cursor1 = self.cnx.cursor() cursor2 = self.cnx.cursor() cursor1.execute("SELECT name FROM Resources") - + + ts_start = datetime.strptime(start, "%Y-%m-%d") + ts_end = datetime.strptime(end, "%Y-%m-%d") + rows = cursor1.fetchall() for name in rows: if (name[0] != 'system') and (name[0] != 'journal') and (name[0] != 'network') and (name[0] != 'shell'): - cursor2.execute ("SELECT SUM(data) FROM Usages WHERE resource_name = %s", (name[0],)) + cursor2.execute ("SELECT SUM(data) FROM Usages WHERE (resource_name = %s) AND (start_date > %s) AND (start_date < %s)", + (name[0],ts_start, ts_end)) uptime = cursor2.fetchone() if uptime[0] > uptime_last: uptime_last= uptime[0] @@ -241,14 +246,17 @@ class DB_Stats: cursor2.close() return (activity_name, uptime_last) - def frequency_usage(self): + def frequency_usage(self, start, end): cursor = self.cnx.cursor() try: - cursor.execute("SELECT SUM(data) FROM Usages WHERE resource_name = system") + ts_start = datetime.strptime(start, "%Y-%m-%d") + ts_end = datetime.strptime(end, "%Y-%m-%d") + cursor.execute("SELECT SUM(data) FROM Usages WHERE (resource_name = 'system') AND (start_date > %s) AND (start_date < %s)", + (ts_start, ts_end)) res = cursor.fetchone() + return res[0] except mysql.connector.Error as err: - print("ferquency_usage") + print("Fail {}: {}".format(cursor.statement, err)) cursor.close() - return res diff --git a/sql/make_report b/sql/make_report index 8dc18d3..3f0c8e2 100755 --- a/sql/make_report +++ b/sql/make_report @@ -34,14 +34,22 @@ args = parser.parse_args() re = DB_Stats (args.db_name, args.db_user, args.db_pass) re.connect() if args.query == 'activity_most_used': - activity = re.most_activity_used(); + activity = re.most_activity_used(args.start_date, args.end_date); print ("**************************************************************************************************************") - print ("THE MOST USED ACTIVITY: {}, TIME: {} hrs / {} mins / {} secs".format(activity[0], activity[1]/60/60, activity[1]/60, activity[1])) + print ("From: {} -> {}:".format(args.start_date, args.end_date)) + print ("THE MOST USED ACTIVITY: {}, TIME: {} hrs / {} mins / {} secs".format(activity[0], (activity[1]/60/60),(activity[1]/60),activity[1])) print ("***************************************************************************************************************") if args.query == 'frequency_usage': - fres = re.frequency_usage(); - print("Frequency usage: {}".format(fres)) + ts_end = long (datetime.strptime(args.end_date, "%Y-%m-%d").strftime("%s")) + ts_start = long (datetime.strptime(args.start_date, "%Y-%m-%d").strftime("%s")) + + fres = re.frequency_usage(args.start_date, args.end_date); + f_x_day = (fres / ((ts_end - ts_start)/(60*60*24)))/60 + print ("**************************************************************************************************************") + print ("From: {} -> {}:".format(args.start_date, args.end_date)) + print("Frequency usage: %.2f min / day" % (f_x_day)) + print ("**************************************************************************************************************") """ print ("Error: {}".format(sys.exc_info()[0])) """ diff --git a/src/stats_consolidation/db.py b/src/stats_consolidation/db.py index 68444f2..84a9234 100644 --- a/src/stats_consolidation/db.py +++ b/src/stats_consolidation/db.py @@ -217,17 +217,22 @@ class DB_Stats: except mysql.connector.Error as err: print("CONNECT FAIL {}".format (err)) - def most_activity_used (self): + def most_activity_used (self, start, end): uptime_last=0 + activity_name='' try: cursor1 = self.cnx.cursor() cursor2 = self.cnx.cursor() cursor1.execute("SELECT name FROM Resources") - + + ts_start = datetime.strptime(start, "%Y-%m-%d") + ts_end = datetime.strptime(end, "%Y-%m-%d") + rows = cursor1.fetchall() for name in rows: if (name[0] != 'system') and (name[0] != 'journal') and (name[0] != 'network') and (name[0] != 'shell'): - cursor2.execute ("SELECT SUM(data) FROM Usages WHERE resource_name = %s", (name[0],)) + cursor2.execute ("SELECT SUM(data) FROM Usages WHERE (resource_name = %s) AND (start_date > %s) AND (start_date < %s)", + (name[0],ts_start, ts_end)) uptime = cursor2.fetchone() if uptime[0] > uptime_last: uptime_last= uptime[0] @@ -241,14 +246,17 @@ class DB_Stats: cursor2.close() return (activity_name, uptime_last) - def frequency_usage(self): + def frequency_usage(self, start, end): cursor = self.cnx.cursor() try: - cursor.execute("SELECT SUM(data) FROM Usages WHERE resource_name = system") + ts_start = datetime.strptime(start, "%Y-%m-%d") + ts_end = datetime.strptime(end, "%Y-%m-%d") + cursor.execute("SELECT SUM(data) FROM Usages WHERE (resource_name = 'system') AND (start_date > %s) AND (start_date < %s)", + (ts_start, ts_end)) res = cursor.fetchone() + return res[0] except mysql.connector.Error as err: - print("ferquency_usage") + print("Fail {}: {}".format(cursor.statement, err)) cursor.close() - return res -- cgit v0.9.1