Begin Main...
(logger=None)
| 68 | |
| 69 | |
| 70 | def main(logger=None): |
| 71 | """ |
| 72 | Begin Main... |
| 73 | """ |
| 74 | if logger is None: |
| 75 | logger = LoggingUtil.create_log(__name__) |
| 76 | |
| 77 | now = datetime.now() |
| 78 | print("Starting: " + str(now)) |
| 79 | logger.info("Starting...") |
| 80 | |
| 81 | dns_types = { |
| 82 | "a": 1, |
| 83 | "ns": 2, |
| 84 | "cname": 5, |
| 85 | "soa": 6, |
| 86 | "ptr": 12, |
| 87 | "hinfo": 13, |
| 88 | "mx": 15, |
| 89 | "txt": 16, |
| 90 | "aaaa": 28, |
| 91 | "srv": 33, |
| 92 | "naptr": 35, |
| 93 | "ds": 43, |
| 94 | "rrsig": 46, |
| 95 | "dnskey": 48, |
| 96 | } |
| 97 | |
| 98 | mongo_connector = MongoConnector.MongoConnector() |
| 99 | all_dns_collection = mongo_connector.get_all_dns_connection() |
| 100 | jobs_manager = JobsManager.JobsManager(mongo_connector, "marinus_dns") |
| 101 | jobs_manager.record_job_start() |
| 102 | |
| 103 | dns_manager = DNSManager.DNSManager(mongo_connector) |
| 104 | |
| 105 | zones = ZoneManager.get_distinct_zones(mongo_connector) |
| 106 | |
| 107 | google_dns = GoogleDNS.GoogleDNS() |
| 108 | |
| 109 | for zone in zones: |
| 110 | time.sleep(1) |
| 111 | for dtype, dnum in dns_types.items(): |
| 112 | result = google_dns.fetch_DNS_records(zone, dnum) |
| 113 | |
| 114 | if result == []: |
| 115 | logger.debug("No records found for " + zone) |
| 116 | else: |
| 117 | new_record = result[0] |
| 118 | new_record["status"] = "confirmed" |
| 119 | new_record["zone"] = zone |
| 120 | new_record["created"] = datetime.now() |
| 121 | logger.debug("Found " + dtype + " for: " + zone) |
| 122 | dns_manager.insert_record(new_record, "marinus") |
| 123 | |
| 124 | logger.info("Starting SOA Search") |
| 125 | |
| 126 | soa_searches = find_sub_zones(all_dns_collection) |
| 127 | for entry in soa_searches: |
no test coverage detected