airtime_analyzer status_reporter shutdown fix

This commit is contained in:
Albert Santoni 2014-11-12 17:01:59 -05:00
parent b324031ee6
commit 8eaeaf71f9
1 changed files with 4 additions and 3 deletions

View File

@ -85,6 +85,7 @@ def process_http_requests(ipc_queue, http_retry_queue_path):
# while the web server is down or unreachable.
with open(http_retry_queue_path, 'wb') as pickle_file:
pickle.dump(retry_queue, pickle_file)
return
except Exception as e: # Terrible top-level exception handler to prevent the thread from dying, just in case.
if shutdown:
return
@ -98,13 +99,13 @@ def send_http_request(picklable_request, retry_queue):
if not isinstance(picklable_request, PicklableHttpRequest):
raise TypeError("picklable_request must be a PicklableHttpRequest. Was of type " + type(picklable_request).__name__)
try:
t = threading.Timer(60, alert_hung_request)
#t = threading.Timer(60, alert_hung_request)
t.start()
bare_request = picklable_request.create_request()
s = requests.Session()
prepared_request = s.prepare_request(bare_request)
r = s.send(prepared_request, timeout=StatusReporter._HTTP_REQUEST_TIMEOUT)
t.cancel() # Watchdog no longer needed.
#r = s.send(prepared_request, timeout=StatusReporter._HTTP_REQUEST_TIMEOUT)
#t.cancel() # Watchdog no longer needed.
r.raise_for_status() # Raise an exception if there was an http error code returned
logging.info("HTTP request sent successfully.")
except requests.exceptions.HTTPError as e: