MCPcopy Create free account
hub / github.com/adobe/Marinus / main

Function main

python3_cron_scripts/sonar_round_two.py:101–198  ·  view source on GitHub ↗

Begin Main...

(logger=None)

Source from the content-addressed store, hash-verified

99
100
101def main(logger=None):
102 """
103 Begin Main...
104 """
105 if logger is None:
106 logger = LoggingUtil.create_log(__name__)
107
108 now = datetime.now()
109 print("Starting: " + str(now))
110 logger.info("Starting...")
111
112 mongo_connector = MongoConnector.MongoConnector()
113 dns_manager = DNSManager.DNSManager(mongo_connector)
114 jobs_manager = JobsManager.JobsManager(mongo_connector, "sonar_round_two")
115 google_dns = GoogleDNS.GoogleDNS()
116 jobs_manager.record_job_start()
117
118 zones = ZoneManager.get_distinct_zones(mongo_connector)
119
120 results = dns_manager.find_multiple({"type": "cname"}, "sonar_dns")
121
122 round_two = []
123 round_three = []
124
125 # Get all the CNAME values from all_dns and append them to round_two
126 for result in results:
127 if is_tracked_zone(result["value"], zones):
128 round_two.append(result["value"])
129
130 logger.info("Round two pre-list: " + str(len(round_two)))
131
132 dead_dns_collection = mongo_connector.get_dead_dns_connection()
133
134 for value in round_two:
135 is_present = dns_manager.find_count({"fqdn": value}, "sonar_dns")
136 if is_present == 0:
137 logger.debug(value + " not found")
138 time.sleep(1)
139 result = google_dns.fetch_DNS_records(value)
140 if result is None or result == []:
141 logger.debug("Unable to resolve")
142 original_records = dns_manager.find_multiple(
143 {"value": value}, "sonar_dns"
144 )
145 for record in original_records:
146 check = dead_dns_collection.count_documents(
147 {"fqdn": record["fqdn"]}
148 )
149 if check == 0:
150 record.pop("_id")
151 mongo_connector.perform_insert(dead_dns_collection, record)
152 else:
153 for entry in result:
154 if is_tracked_zone(entry["fqdn"], zones):
155 new_record = entry
156 new_record["status"] = "unconfirmed"
157 new_record["zone"] = get_fld_from_value(value, "")
158 new_record["created"] = datetime.now()

Callers 1

sonar_round_two.pyFile · 0.70

Calls 14

record_job_startMethod · 0.95
find_multipleMethod · 0.95
find_countMethod · 0.95
fetch_DNS_recordsMethod · 0.95
insert_recordMethod · 0.95
find_oneMethod · 0.95
record_job_completeMethod · 0.95
create_logMethod · 0.80
get_distinct_zonesMethod · 0.80
perform_insertMethod · 0.80
is_tracked_zoneFunction · 0.70

Tested by

no test coverage detected