def api_app(conf): cfg.CONF(args=[], project='monasca') log_levels = (cfg.CONF.default_log_levels) cfg.set_defaults(log.log_opts, default_log_levels=log_levels) log.setup('monasca') dispatcher_manager = named.NamedExtensionManager( namespace=DISPATCHER_NAMESPACE, names=cfg.CONF.dispatcher, invoke_on_load=True, invoke_args=[cfg.CONF]) if not list(dispatcher_manager): LOG.error('Failed to load any dispatchers for %s' % DISPATCHER_NAMESPACE) return None # Create the application app = resource_api.ResourceAPI() # add each dispatcher to the application to serve requests offered by # each dispatcher for driver in dispatcher_manager: app.add_route(None, driver.obj) LOG.debug('Dispatcher drivers have been added to the routes!') return app
def main(argv=None): log_levels = (cfg.CONF.default_log_levels) cfg.set_defaults(log.log_opts, default_log_levels=log_levels) cfg.CONF(argv[1:], project='monasca-anomaly') log.setup('monasca-anomaly') nupic_anomaly_processor = multiprocessing.Process( target=NupicAnomalyProcessor().run) processors.append(nupic_anomaly_processor) ks_anomaly_processor = multiprocessing.Process( target=KsAnomalyProcessor().run) processors.append(ks_anomaly_processor) try: LOG.info('Starting processes') for process in processors: process.start() # The signal handlers must be added after the processes start otherwise they run on all processes # signal.signal(signal.SIGCHLD, clean_exit) #signal.signal(signal.SIGINT, clean_exit) #signal.signal(signal.SIGTERM, clean_exit) while True: time.sleep(5) except Exception: LOG.exception('Error! Exiting.') for process in processors: process.terminate()
def api_app(conf): cfg.CONF(args=[], project='monasca') log_levels = (cfg.CONF.default_log_levels) cfg.set_defaults(log.log_opts, default_log_levels=log_levels) log.setup('monasca') dispatcher_manager = named.NamedExtensionManager( namespace=namespace.DISPATCHER_NS, names=cfg.CONF.dispatcher, invoke_on_load=True, invoke_args=[cfg.CONF]) if not list(dispatcher_manager): LOG.error('Failed to load any dispatchers for %s' % namespace.DISPATCHER_NS) return None # Create the application app = resource_api.ResourceAPI() # add each dispatcher to the application to serve requests offered by # each dispatcher for driver in dispatcher_manager: app.add_route(None, driver.obj) LOG.debug('Dispatcher drivers have been added to the routes!') return app
def main(argv=None): log_levels = (cfg.CONF.default_log_levels) cfg.set_defaults(log.log_opts, default_log_levels=log_levels) cfg.CONF(argv[1:], project='monasca-anomaly') log.setup('monasca-anomaly') nupic_anomaly_processor = multiprocessing.Process( target=NupicAnomalyProcessor().run ) processors.append(nupic_anomaly_processor) ks_anomaly_processor = multiprocessing.Process( target=KsAnomalyProcessor().run ) processors.append(ks_anomaly_processor) try: LOG.info('Starting processes') for process in processors: process.start() # The signal handlers must be added after the processes start otherwise they run on all processes # signal.signal(signal.SIGCHLD, clean_exit) #signal.signal(signal.SIGINT, clean_exit) #signal.signal(signal.SIGTERM, clean_exit) while True: time.sleep(5) except Exception: LOG.exception('Error! Exiting.') for process in processors: process.terminate()
def prepare_service(argv=None): gettextutils.install('monasca') gettextutils.enable_lazy() log_levels = (cfg.CONF.default_log_levels) cfg.set_defaults(log.log_opts, default_log_levels=log_levels) if argv is None: argv = sys.argv cfg.CONF(argv[1:], project='monasca') log.setup('monasca') LOG.info('Service has started!')
def prepare_service(argv=None): gettextutils.install('openstack') gettextutils.enable_lazy() log_levels = (cfg.CONF.default_log_levels) cfg.set_defaults(log.log_opts, default_log_levels=log_levels) if argv is None: argv = sys.argv cfg.CONF(argv[1:], project='monasca-anomaly') log.setup('monasca-anomaly') LOG.info('Service has started!')
def api_app(conf): # Setup logs log_levels = (cfg.CONF.default_log_levels) cfg.set_defaults(log.log_opts, default_log_levels=log_levels) cfg.CONF(args=[], project='monasca') log.setup('monasca') # Create the application app = resource_api.ResourceAPI() # add the metrics resource app.add_resource('metrics', METRICS_DISPATCHER_NAMESPACE, cfg.CONF.dispatcher.driver, [conf]) # add the events resource app.add_resource('events', EVENTS_DISPATCHER_NAMESPACE, cfg.CONF.dispatcher.driver, [conf]) # add the transforms resource app.add_resource('transforms', TRANSFORMS_DISPATCHER_NAMESPACE, cfg.CONF.dispatcher.driver, [conf]) # add the notifications resource app.add_resource('notifications', NOTIFICATIONS_DISPATCHER_NAMESPACE, cfg.CONF.dispatcher.driver, [conf]) # load the alarm definitions resource app.add_resource('alarm-definitions', ALARM_DEFINITIONS_DISPATCHER_NAMESPACE, cfg.CONF.dispatcher.driver, [conf]) # load the alarm definitions resource app.add_resource('alarms', ALARMS_DISPATCHER_NAMESPACE, cfg.CONF.dispatcher.driver, [conf]) return app