diff --git a/script/statistics.py b/script/statistics.py index af97ceb..c64ea20 100644 --- a/script/statistics.py +++ b/script/statistics.py @@ -41,24 +41,31 @@ def _get_count(sql): ret = results.getInt("count") return ret -def get_count(command= "%%", start = None, end = None, result= "%%"): - sql = "Command LIKE '"+ command +"' AND Result LIKE '"+ result +"'" +def _add_sql_time(sql, start, end): if start: if len(start)==8: start = start + " 00:00:00.000" - sql = sql + " AND Start>='" + start + "'" + sql = sql + " AND Start>='" + start + "'" if end: if len(end)==8: - end = end + " 00:00:00.000" - sql = sql + " AND (\"End\"<'" + end + "')" + end = end + " 00:00:00.000" + sql = sql + " AND (\"End\"<'" + end + "')" + return sql + +def get_count(command= "%%", start = None, end = None, result= "%%"): + sql = "Command LIKE '"+ command +"' AND Result LIKE '"+ result +"'" + sql = _add_sql_time(sql, start, end) return _get_count(sql) - -def print_stats(command = "%", start = None, end = None): - print "Statistics for: " , command , " from ", start , " to ", end +def get_cmd_stats(command = "%", start = None, end = None): s = get_count(command, start, end, "success") a = get_count(command, start, end, "abort") e = get_count(command, start, end, "error") + return (s,a,e) + +def print_cmd_stats(command = "%", start = None, end = None): + print "Statistics for: " , command , " from ", start , " to ", end + (s,a,e) = get_cmd_stats(command, start, end) t=s+a+e #get_count(command, start, end, "%") if t==0: print "No records" @@ -67,11 +74,24 @@ def print_stats(command = "%", start = None, end = None): print "Error: ", ("%1.2f%% of %d" % ((float(e)/t) * 100, t)) print "Abort: ", ("%1.2f%% of %d" % ((float(a)/t) * 100, t)) -cmd = "%test1.py" -start= "06/02/19" #"06/02/19 13:27:56.124" -end= "07/04/19" #"29/04/19 13:27:56.124" -print_stats ("%test1.py", start, end) +def get_commands(start = None, end = None): + sql = "SELECT * FROM . WHERE Command != ''" + sql = _add_sql_time(sql, start, end) + sql = sql + " GROUP BY Command" + results = stmt.executeQuery(sql) + ret = [] + while results.next(): + ret.append(results.getString("command")) +def get_stats(start = None, end = None): + cmds = get_commands() + +start= "06/02/19" #"06/02/19 13:27:56.124" +end= "16/03/19" #"29/04/19 13:27:56.124" + + +print_cmd_stats ("%test1.py", start, end) +print_stats(start, end)