From 7b8920521be41680be231dcd11c1be2755f6b89f Mon Sep 17 00:00:00 2001 From: Tom Ritter Date: Wed, 27 Jan 2016 13:53:33 -0500 Subject: Add some sample jobs for the tor servers I monitor --- samplejobs/MetricsChecker.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 samplejobs/MetricsChecker.py (limited to 'samplejobs/MetricsChecker.py') diff --git a/samplejobs/MetricsChecker.py b/samplejobs/MetricsChecker.py new file mode 100755 index 0000000..d46c7d3 --- /dev/null +++ b/samplejobs/MetricsChecker.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python + +import os +import base64 +import logging +import datetime + +import requests + +import JobBase + +class MetricsChecker(JobBase.JobBase): + def executeEvery(self): + return JobBase.JobFrequency.DAY_NOON + def execute(self): + body = "" + ys = datetime.date.today() - datetime.timedelta(hours=24) + url = "https://example.com/out/relay-descriptors/consensus/" + str(ys.year) + "/" + str(ys.month).zfill(2) + "/" + str(ys.day).zfill(2) + "/" + try: + r = requests.get(url) + if "12-00-00-consensus" in r.content: + pass + else: + body = "Could not find 12-00-00-consensus in the body:\n\n" + r.content + except Exception as e: + body = "Caught an exception:\n\n" + str(e) + if body: + logging.warn("tor metrics is broken?") + logging.warn(body) + return self.sendEmail("tor metrics is broken?", body) + else: + return True -- cgit v1.2.3