summaryrefslogtreecommitdiff
path: root/monitor/josef_logreader.py
diff options
context:
space:
mode:
Diffstat (limited to 'monitor/josef_logreader.py')
-rwxr-xr-xmonitor/josef_logreader.py63
1 files changed, 58 insertions, 5 deletions
diff --git a/monitor/josef_logreader.py b/monitor/josef_logreader.py
index 62edfff..8be4dd5 100755
--- a/monitor/josef_logreader.py
+++ b/monitor/josef_logreader.py
@@ -30,7 +30,6 @@ def read_loglog(filename):
return content
def print_log_stats(l):
- print l
log = read_loglog(l)
rev_log = list(reversed(log))
last = rev_log[0]
@@ -48,12 +47,66 @@ def print_log_stats(l):
print "STH age: " + str(age)[:-7]
print "Size: " + size
break
- # else:
- # print "No STH update found in log."
+ else:
+ print "No STH update found in log."
+
+
+def print_average_age(l):
+ log = read_loglog(l)
+ rev_log = list(reversed(log))
+ # last = rev_log[0]
+
+ prev_timestamp = None
+ ages = []
+ for item in rev_log:
+ line = item[TIME_LEN:]
+ if line[:len(START_STR)] == START_STR:
+ # break
+ prev_timestamp = None # Don't count over restarts
+ if line[:len(NEW_STH_STR)] == NEW_STH_STR:
+ timestamp = datetime.datetime.strptime(line[-20:-1], '%Y-%m-%d %H:%M:%S')
+ if prev_timestamp is not None:
+ ages.append(prev_timestamp - timestamp)
+ prev_timestamp = timestamp
+
+ if len(ages) == 0:
+ print "No timedeltas found.."
+ else:
+ average_timedelta = sum(ages, datetime.timedelta(0)) / len(ages)
+ print "Average update time: " + str(average_timedelta) + " (" + str(len(ages)) + " values)"
+
+def print_errors(l):
+ # print errors since last restart
+ log = read_loglog(l)
+ rev_log = list(reversed(log))
+
+ prev_timestamp = None
+ ages = []
+ for item in rev_log:
+ line = item[TIME_LEN:]
+ if "ERROR" in line:
+ print item[:-1]
+ if line[:len(START_STR)] == START_STR:
+ # break # comment this line to print all errors ever
+ pass
- print ""
if __name__ == "__main__":
logs = get_logs()
for log in logs:
- print_log_stats(log) \ No newline at end of file
+ if log == "monitor.log":
+ pass
+ else:
+ print log
+ print_log_stats(log)
+ print_average_age(log)
+ print_errors(log)
+ print ""
+
+
+
+
+
+
+
+