cc-2055: switch to init.d
-fixed pypo hanging if it was started before rabbitmq.
This commit is contained in:
parent
8a2930b996
commit
8d3b99e440
1 changed files with 21 additions and 10 deletions
|
@ -61,18 +61,25 @@ class PypoFetch(Thread):
|
||||||
self.cue_file = CueFile()
|
self.cue_file = CueFile()
|
||||||
self.set_export_source('scheduler')
|
self.set_export_source('scheduler')
|
||||||
self.queue = q
|
self.queue = q
|
||||||
|
|
||||||
logger.info("Initializing RabbitMQ stuff")
|
|
||||||
schedule_exchange = Exchange("airtime-schedule", "direct", durable=True, auto_delete=True)
|
|
||||||
schedule_queue = Queue("pypo-fetch", exchange=schedule_exchange, key="foo")
|
|
||||||
self.connection = BrokerConnection(config["rabbitmq_host"], config["rabbitmq_user"], config["rabbitmq_password"], "/")
|
|
||||||
channel = self.connection.channel()
|
|
||||||
consumer = Consumer(channel, schedule_queue)
|
|
||||||
consumer.register_callback(handle_message)
|
|
||||||
consumer.consume()
|
|
||||||
|
|
||||||
logger.info("PypoFetch: init complete")
|
logger.info("PypoFetch: init complete")
|
||||||
|
|
||||||
|
def init_rabbit_mq(self):
|
||||||
|
logger = logging.getLogger('fetch')
|
||||||
|
logger.info("Initializing RabbitMQ stuff")
|
||||||
|
try:
|
||||||
|
schedule_exchange = Exchange("airtime-schedule", "direct", durable=True, auto_delete=True)
|
||||||
|
schedule_queue = Queue("pypo-fetch", exchange=schedule_exchange, key="foo")
|
||||||
|
self.connection = BrokerConnection(config["rabbitmq_host"], config["rabbitmq_user"], config["rabbitmq_password"], "/")
|
||||||
|
channel = self.connection.channel()
|
||||||
|
consumer = Consumer(channel, schedule_queue)
|
||||||
|
consumer.register_callback(handle_message)
|
||||||
|
consumer.consume()
|
||||||
|
except Exception, e:
|
||||||
|
logger.error(e)
|
||||||
|
return False
|
||||||
|
|
||||||
|
return True
|
||||||
|
|
||||||
|
|
||||||
def set_export_source(self, export_source):
|
def set_export_source(self, export_source):
|
||||||
self.export_source = export_source
|
self.export_source = export_source
|
||||||
|
@ -336,6 +343,10 @@ class PypoFetch(Thread):
|
||||||
def run(self):
|
def run(self):
|
||||||
logger = logging.getLogger('fetch')
|
logger = logging.getLogger('fetch')
|
||||||
|
|
||||||
|
while not self.init_rabbit_mq():
|
||||||
|
logger.error("Error connecting to RabbitMQ Server. Trying again in few seconds")
|
||||||
|
time.sleep(5)
|
||||||
|
|
||||||
try: os.mkdir(self.cache_dir)
|
try: os.mkdir(self.cache_dir)
|
||||||
except Exception, e: pass
|
except Exception, e: pass
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue