Reset consumer restart counter after 24 hours (#337)

* Reset consumer restart counter after 24 hours

* Use constant for seconds in day
diff --git a/provider/consumer.py b/provider/consumer.py
index f5088aa..2ced050 100644
--- a/provider/consumer.py
+++ b/provider/consumer.py
@@ -34,10 +34,12 @@
 from urlparse import urlparse
 from authHandler import IAMAuth
 from requests.auth import HTTPBasicAuth
+from datetime import datetime, timedelta
 
 local_dev = os.getenv('LOCAL_DEV', 'False')
 payload_limit = int(os.getenv('PAYLOAD_LIMIT', 900000))
 check_ssl = (local_dev == 'False')
+seconds_in_day = 86400
 
 processingManager = Manager()
 
@@ -66,6 +68,7 @@
 
         self.process = ConsumerProcess(trigger, params, self.sharedDictionary)
         self.__restartCount = 0
+        self.__lastRestart = datetime.now()
 
     def currentState(self):
         return self.sharedDictionary['currentState']
@@ -96,7 +99,13 @@
             logging.info('[{}] Request to restart a consumer that is already slated for deletion.'.format(self.trigger))
             return
 
-        self.__restartCount += 1
+        timeBetweenRestarts = datetime.now() - self.__lastRestart
+        self.__lastRestart = datetime.now()
+
+        if timeBetweenRestarts.total_seconds() >= seconds_in_day:
+            self.__restartCount = 1
+        else:
+            self.__restartCount += 1
 
         logging.info('[{}] Quietly shutting down consumer for restart'.format(self.trigger))
         self.setDesiredState(Consumer.State.Restart)