@@ -74,6 +74,7 @@ def __init__(self):
7474 if os .getenv ('LOCAL_PROCESSING' , "False" ).lower () == "true" :
7575 connector_default = "Local"
7676 max_retry = os .getenv ('CLOWDER_MAX_RETRY' , 10 )
77+ heartbeat = os .getenv ('HEARTBEAT' , 5 * 60 )
7778
7879 # create the actual extractor
7980 self .parser = argparse .ArgumentParser (description = self .extractor_info ['description' ])
@@ -111,6 +112,8 @@ def __init__(self):
111112 help = 'instance will bind itself to RabbitMQ by name but NOT file type' )
112113 self .parser .add_argument ('--max-retry' , dest = 'max_retry' , default = max_retry ,
113114 help = 'Maximum number of retries if an error happens in the extractor' )
115+ self .parser .add_argument ('--heartbeat' , dest = 'heartbeat' , default = heartbeat ,
116+ help = 'Time in seconds between extractor heartbeats (default=%d)' % heartbeat )
114117
115118 def setup (self ):
116119 """Parse command line arguments and so some setup
@@ -165,7 +168,8 @@ def start(self):
165168 rabbitmq_queue = self .args .rabbitmq_queuename ,
166169 mounted_paths = json .loads (self .args .mounted_paths ),
167170 clowder_url = self .args .clowder_url ,
168- max_retry = self .args .max_retry )
171+ max_retry = self .args .max_retry ,
172+ heartbeat = self .args .heartbeat )
169173 connector .connect ()
170174 connector .register_extractor (self .args .registration_endpoints )
171175 threading .Thread (target = connector .listen , name = "RabbitMQConnector" ).start ()
0 commit comments