def receive_test_data( self ): """ """ try: spot_sqs_message_durable = SqsMessageDurable( self.spot_master_queue_name, region_name=self.region_name, profile_name=self.profile_name) while True: message = spot_sqs_message_durable.receive_message(); if message == None: break; spot_master_msg = SpotMasterMsg( raw_json=message.get_body() ) logger.info('spot_master_msg: type=' + spot_master_msg.spot_master_msg_type ) spot_sqs_message_durable.delete_message(message) except StandardError as e: logger.error( e ) logger.error( traceback.format_exc() ) sys.exit(8)
def run(self): """ Read Master messages, launch Master microservice based on service_class_name message attribute """ spot_master_sqs_message_durable = SqsMessageDurable( self.spot_master_queue_name, self.region_name, profile_name=self.profile_name ) while True: try: logger.info('SpotMasterDispatcher loop') if self.is_shutdown: logger.info('Shutting down SpotMasterDispatcher' ) break; message = spot_master_sqs_message_durable.receive_message( message_attributes=['service_class_name']) if message == None: continue message_attribute = message.message_attributes['service_class_name'] service_class_name = message_attribute['string_value'] logger.info('Launching ' + service_class_name ) SpotMasterMicrosvcLauncher( service_class_name, message, self ).start() except StandardError as e: logger.error('Exiting SpotMasterDispatcher due to exception' ) logger.error( e ) logger.error( traceback.format_exc() )