cc-1799 : Filesystem
running Notifier as a daemon, allows parallel processing of event queue at all times.
This commit is contained in:
parent
8b533bbd21
commit
4c8e6a04ac
4 changed files with 48 additions and 67 deletions
|
@ -22,56 +22,48 @@ def handleSigTERM(signum, frame):
|
|||
sys.exit(0)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
# configure logging
|
||||
try:
|
||||
logging.config.fileConfig("logging.cfg")
|
||||
except Exception, e:
|
||||
print 'Error configuring logging: ', e
|
||||
sys.exit()
|
||||
|
||||
# configure logging
|
||||
try:
|
||||
logging.config.fileConfig("logging.cfg")
|
||||
except Exception, e:
|
||||
print 'Error configuring logging: ', e
|
||||
sys.exit()
|
||||
logger = logging.getLogger()
|
||||
p = None
|
||||
|
||||
logger = logging.getLogger()
|
||||
p = None
|
||||
try:
|
||||
config = AirtimeMediaConfig()
|
||||
logger.info("Initializing event processor")
|
||||
pe = AirtimeProcessEvent(airtime_config=config)
|
||||
|
||||
try:
|
||||
config = AirtimeMediaConfig()
|
||||
logger.info("Initializing event processor")
|
||||
pe = AirtimeProcessEvent(airtime_config=config)
|
||||
notifier = AirtimeNotifier(pe.wm, pe, read_freq=1, timeout=1, airtime_config=config)
|
||||
notifier.coalesce_events()
|
||||
|
||||
notifier = AirtimeNotifier(pe.wm, pe, read_freq=1, timeout=1, airtime_config=config)
|
||||
notifier.coalesce_events()
|
||||
p = Process(target=notifier.process_file_events, args=(pe.file_events,))
|
||||
p.start()
|
||||
|
||||
p = Process(target=notifier.process_file_events, args=(pe.file_events,))
|
||||
p.daemon = True
|
||||
p.start()
|
||||
|
||||
signal.signal(signal.SIGTERM, handleSigTERM)
|
||||
signal.signal(signal.SIGTERM, handleSigTERM)
|
||||
|
||||
logger.info("Setting up monitor")
|
||||
response = None
|
||||
while response is None:
|
||||
response = notifier.api_client.setup_media_monitor()
|
||||
time.sleep(5)
|
||||
logger.info("Setting up monitor")
|
||||
response = None
|
||||
while response is None:
|
||||
response = notifier.api_client.setup_media_monitor()
|
||||
time.sleep(5)
|
||||
|
||||
storage_directory = response["stor"].encode('utf-8')
|
||||
logger.info("Storage Directory is: %s", storage_directory)
|
||||
config.storage_directory = storage_directory
|
||||
storage_directory = response["stor"].encode('utf-8')
|
||||
logger.info("Storage Directory is: %s", storage_directory)
|
||||
config.storage_directory = storage_directory
|
||||
|
||||
wdd = pe.watch_directory(storage_directory)
|
||||
logger.info("Added watch to %s", storage_directory)
|
||||
logger.info("wdd result %s", wdd[storage_directory])
|
||||
wdd = pe.watch_directory(storage_directory)
|
||||
logger.info("Added watch to %s", storage_directory)
|
||||
logger.info("wdd result %s", wdd[storage_directory])
|
||||
|
||||
#notifier.loop(callback=mm.notifier_loop_callback)
|
||||
notifier.loop(daemonize=True, callback=pe.notifier_loop_callback, pid_file='/var/run/airtime-notifier.pid', stdout='/var/log/airtime/media-monitor/media-monitor.log')
|
||||
|
||||
while True:
|
||||
if(notifier.check_events(1)):
|
||||
notifier.read_events()
|
||||
notifier.process_events()
|
||||
pe.notifier_loop_callback(notifier)
|
||||
except KeyboardInterrupt:
|
||||
notifier.stop()
|
||||
except Exception, e:
|
||||
notifier.stop()
|
||||
logger.error('Exception: %s', e)
|
||||
|
||||
except KeyboardInterrupt:
|
||||
notifier.stop()
|
||||
except Exception, e:
|
||||
logger.error('Exception: %s', e)
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue