From 0cb49d85dde43c7e793f82df5780e35eeb55feeb Mon Sep 17 00:00:00 2001 From: Brenden Matthews Date: Wed, 2 Mar 2016 11:14:55 -0800 Subject: [PATCH] Don't reconnect on `event_stream_detached`. We should also randomize the reconnect delay on exceptions. --- marathon_lb.py | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/marathon_lb.py b/marathon_lb.py index 2ddcf9ad..48f9aa79 100755 --- a/marathon_lb.py +++ b/marathon_lb.py @@ -69,6 +69,7 @@ import dateutil.parser import math import threading +import random class ConfigTemplater(object): @@ -1460,10 +1461,6 @@ def process_sse_events(marathon, config_file, groups, data = json.loads(real_event_data) logger.info( "received event of type {0}".format(data['eventType'])) - if data['eventType'] == 'event_stream_detached': - # Need to force reload and re-attach to stream - processor.reset_from_tasks() - return processor.handle_event(data) else: logger.info("skipping empty message") @@ -1527,7 +1524,7 @@ def process_sse_events(marathon, config_file, groups, except: logger.exception("Caught exception") logger.error("Reconnecting...") - time.sleep(1) + time.sleep(random.random() * 3) else: # Generate base config regenerate_config(get_apps(marathon), args.haproxy_config, args.group,