diff options
Diffstat (limited to 'monitor/josef_reader.py')
-rwxr-xr-x | monitor/josef_reader.py | 46 |
1 files changed, 18 insertions, 28 deletions
diff --git a/monitor/josef_reader.py b/monitor/josef_reader.py index 199fe29..8ffbd36 100755 --- a/monitor/josef_reader.py +++ b/monitor/josef_reader.py @@ -31,21 +31,14 @@ class monitored_domain: f.write(s + "\n") f.close() - # def add(self, item): - # self.entries.appent(item) - def set(self): self.entries = db_monitor_domain(self.url, None, True, None) self.log("Got " + str(len(self.entries)) + " certs for " + self.url) def update(self): new = db_monitor_domain(self.url, None, True, None) - # if len(new) != len(self.entries): - # print self.entries - # print new - compare_entry_lists(new, self.entries) + self.compare_and_log_entries(new, self.entries) self.entries = new - def to_dict(self): d = {} @@ -62,7 +55,7 @@ class monitored_domain: entries.append(monitored_entry(item["subject"],item["issuer"],item["log"],item["status"],item["leaf_hash"])) self.entries = entries - def compare_entry_lists(self, new, old): + def compare_and_log_entries(self, new, old): added_items = [] removed_items = [] @@ -94,8 +87,8 @@ class monitored_entry: self.leaf_hash = leaf_hash def __eq__(self, other): - return self.leaf_hash == other.leaf_hash - # TODO check status (or expired wont expire) + return self.leaf_hash == other.leaf_hash + # return self.leaf_hash == other.leaf_hash and self.status == other.status def __str__(self): s = self.subject + \ @@ -117,25 +110,9 @@ class monitored_entry: -parser = argparse.ArgumentParser(description="") -parser.add_argument('--domain', default=None) -parser.add_argument('--log', default=None) -parser.add_argument('--exclude-invalid', action='store_true') -parser.add_argument('--get-cert', action='store_true') - -args = parser.parse_args() - -monitored_domains = [] -for md in MONITORED_DOMAINS: - monitored_domains.append(monitored_domain(md)) - -db = DB_PATH - - - def db_monitor_domain(domain, log=None, exclude_invalid=None, get_cert=None): # print domain - raw = db_lookup_domain(db, domain) + raw = db_lookup_domain(DB_PATH, domain) cur_time = dt.now() count_valid = 0 @@ -209,6 +186,19 @@ def db_monitor_domain(domain, log=None, exclude_invalid=None, get_cert=None): return res if __name__ == "__main__": + + parser = argparse.ArgumentParser(description="") + parser.add_argument('--domain', default=None) + parser.add_argument('--log', default=None) + parser.add_argument('--exclude-invalid', action='store_true') + parser.add_argument('--get-cert', action='store_true') + + args = parser.parse_args() + + monitored_domains = [] + for md in MONITORED_DOMAINS: + monitored_domains.append(monitored_domain(md)) + if args.domain: db_monitor_domain(args.domain, args.log, args.exclude_invalid, args.get_cert) else: |