From c416d79574c06e6b9f5b434af99d2ab6259bce4b Mon Sep 17 00:00:00 2001 From: jowj Date: Sat, 1 Dec 2018 19:06:50 -0600 Subject: [PATCH] Add state tracking. --- arke.py | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/arke.py b/arke.py index 7d6d5d0..150e3f8 100644 --- a/arke.py +++ b/arke.py @@ -22,6 +22,18 @@ while is_on: datastore = monitor_AllTargets(arkevars.httpTargets) json_string = json.dumps(datastore) + # track state + file = open("/shared/results.json", "r") + oldData = file.read() + if oldData = json_string: + changed = False + else: + changed = True + + # old file removal must happen after state tracking: + os.remove("/shared/results.json") + + # write new results to file file = open("/shared/results.json", "a+") file.write(json_string) file.write("\n") @@ -34,9 +46,10 @@ while is_on: for key,value in results[-1].items(): if value != 200: - errorFile = open("/shared/alerts.log", "w") - errorText = key + " is down." + "\n" - errorFile.write(errorText) - errorFile.close() + if state = True: + errorFile = open("/shared/alerts.log", "w") + errorText = key + " is down." + "\n" + errorFile.write(errorText) + errorFile.close() time.sleep(60) - os.remove("/shared/results.json") +