Exemplo n.º 1
0
    def test_stream_pub_sub(self):
        self.verified = Event()
        self.route = StreamRoute(exchange_point='xp_test', routing_key='route')
        def verify(message, route, stream):
            self.assertEquals(message,'test')
            self.assertEquals(route, self.route)
            self.assertEquals(stream, '')
            self.verified.set()

        sub_proc = SimpleProcess()
        sub_proc.container = self.container

        sub1 = StreamSubscriber(process=sub_proc, exchange_name='sub1', callback=verify)
        sub1.start()
        self.queue_cleanup.append('sub1')


        pub_proc = SimpleProcess()
        pub_proc.container = self.container
        pub1 = StreamPublisher(process=pub_proc,stream_route=self.route)
        sub1.xn.bind(self.route.routing_key,pub1.xp) 

        pub1.publish('test')

        self.assertTrue(self.verified.wait(2))
Exemplo n.º 2
0
    def test_stream_pub_sub(self):
        self.verified = Event()
        self.route = StreamRoute(routing_key='stream_name')

        def verify(message, route, stream):
            self.assertEquals(message, 'test')
            self.assertEquals(route.routing_key, self.route.routing_key)
            self.assertTrue(route.exchange_point.startswith(get_sys_name()))
            self.assertEquals(stream, 'stream_name')
            self.verified.set()

        sub_proc = SimpleProcess()
        sub_proc.container = self.container

        sub1 = StreamSubscriber(process=sub_proc, exchange_name='stream_name', callback=verify)
        sub1.add_stream_subscription("stream_name")
        sub1.start()
        self.queue_cleanup.append('data.stream_name')

        pub_proc = SimpleProcess()
        pub_proc.container = self.container

        pub1 = StreamPublisher(process=pub_proc, stream=self.route)
        sub1.xn.bind(self.route.routing_key, pub1.xp)

        pub1.publish('test')

        self.assertTrue(self.verified.wait(2))
Exemplo n.º 3
0
 def on_start(self):
     SimpleProcess.on_start(self)
     self.data_retriever = DataRetrieverServiceProcessClient(process=self)
     self.interval_key = self.CFG.get_safe('process.interval_key',None)
     self.qc_params    = self.CFG.get_safe('process.qc_params',[])
     validate_is_not_none(self.interval_key, 'An interval key is necessary to paunch this process')
     self.event_subscriber = EventSubscriber(event_type=OT.TimerEvent, origin=self.interval_key, callback=self._event_callback, auto_delete=True)
     self.add_endpoint(self.event_subscriber)
     self.resource_registry = self.container.resource_registry
Exemplo n.º 4
0
 def on_start(self):
     SimpleProcess.on_start(self)
     self.data_retriever = DataRetrieverServiceProcessClient(process=self)
     self.interval_key = self.CFG.get_safe('process.interval_key', None)
     self.qc_params = self.CFG.get_safe('process.qc_params', [])
     validate_is_not_none(
         self.interval_key,
         'An interval key is necessary to paunch this process')
     self.event_subscriber = EventSubscriber(event_type=OT.TimerEvent,
                                             origin=self.interval_key,
                                             callback=self._event_callback,
                                             auto_delete=True)
     self.add_endpoint(self.event_subscriber)
     self.resource_registry = self.container.resource_registry
     self.run_interval = self.CFG.get_safe(
         'service.qc_processing.run_interval', 24)
Exemplo n.º 5
0
    def on_start(self):
        try:
            SimpleProcess.on_start(self)
            self.pydap_host = self.CFG.get_safe('container.pydap_gateway.web_server.host', 'localhost')
            self.pydap_port = self.CFG.get_safe('container.pydap_gateway.web_server.port', '8001')

            self.pydap_data_path = self.CFG.get_safe('server.pydap.data_path', 'RESOURCE:ext/pydap')

            self.pydap_data_path = FileSystem.get_extended_url(self.pydap_data_path)
            self.app = make_app(None, self.pydap_data_path, 'ion/core/static/templates/')
            self.log = getLogger('pydap')
            self.log.write = self.log.info
            self.server = WSGIServer((self.pydap_host, int(self.pydap_port)), self.app, log=self.log)
            self.server.start()
        except: 
            log.exception('Unable to start PyDAP server')
            raise
    def on_start(self):
        try:
            SimpleProcess.on_start(self)

            self.viz_service = VisualizationServiceClient()
            # Get config params
            self.monitor_timeout = get_safe(self.CFG, 'user_queue_monitor_timeout', 300)
            self.monitor_queue_size = get_safe(self.CFG, 'user_queue_monitor_size', 100)

            self.monitor_event = gevent.event.Event()
            self.monitor_event.clear()

            self._process.thread_manager.spawn(self.user_vis_queue_monitor)

        except:
            log.exception('Unable to start VisUserQueueMonitor')
            raise
Exemplo n.º 7
0
    def on_start(self):
        try:
            SimpleProcess.on_start(self)

            self.viz_service = VisualizationServiceClient()
            # Get config params
            self.monitor_timeout = get_safe(self.CFG,
                                            'user_queue_monitor_timeout', 300)
            self.monitor_queue_size = get_safe(self.CFG,
                                               'user_queue_monitor_size', 100)

            self.monitor_event = gevent.event.Event()
            self.monitor_event.clear()

            self._process.thread_manager.spawn(self.user_vis_queue_monitor)

        except:
            log.exception('Unable to start VisUserQueueMonitor')
            raise
Exemplo n.º 8
0
    def test_stream_pub_sub(self):
        self.verified = Event()
        self.route = StreamRoute(exchange_point='xp_test', routing_key='route')

        def verify(message, route, stream):
            self.assertEquals(message, 'test')
            self.assertEquals(route, self.route)
            self.assertEquals(stream, '')
            self.verified.set()

        sub_proc = SimpleProcess()
        sub_proc.container = self.container

        sub1 = StreamSubscriber(process=sub_proc,
                                exchange_name='sub1',
                                callback=verify)
        sub1.start()
        self.queue_cleanup.append('sub1')

        pub_proc = SimpleProcess()
        pub_proc.container = self.container
        pub1 = StreamPublisher(process=pub_proc, stream_route=self.route)
        sub1.xn.bind(self.route.routing_key, pub1.xp)

        pub1.publish('test')

        self.assertTrue(self.verified.wait(2))
Exemplo n.º 9
0
    def test_stream_pub_sub(self):
        self.verified = Event()
        self.route = StreamRoute(routing_key='stream_name')

        def verify(message, route, stream):
            self.assertEquals(message, 'test')
            self.assertEquals(route.routing_key, self.route.routing_key)
            self.assertTrue(route.exchange_point.startswith(get_sys_name()))
            self.assertEquals(stream, 'stream_name')
            self.verified.set()

        sub_proc = SimpleProcess()
        sub_proc.container = self.container

        sub1 = StreamSubscriber(process=sub_proc,
                                exchange_name='stream_name',
                                callback=verify)
        sub1.add_stream_subscription("stream_name")
        sub1.start()
        self.queue_cleanup.append('data.stream_name')

        pub_proc = SimpleProcess()
        pub_proc.container = self.container

        pub1 = StreamPublisher(process=pub_proc, stream=self.route)
        sub1.xn.bind(self.route.routing_key, pub1.xp)

        pub1.publish('test')

        self.assertTrue(self.verified.wait(2))
Exemplo n.º 10
0
    def on_start(self):
        try:
            SimpleProcess.on_start(self)
            self.pydap_host = self.CFG.get_safe(
                'container.pydap_gateway.web_server.host', 'localhost')
            self.pydap_port = self.CFG.get_safe(
                'container.pydap_gateway.web_server.port', '8001')

            self.pydap_data_path = self.CFG.get_safe('server.pydap.data_path',
                                                     'RESOURCE:ext/pydap')

            self.pydap_data_path = FileSystem.get_extended_url(
                self.pydap_data_path)
            self.app = make_app(None, self.pydap_data_path,
                                'ion/core/static/templates/')
            self.log = getLogger('pydap')
            self.log.write = self.log.info
            self.server = WSGIServer((self.pydap_host, int(self.pydap_port)),
                                     self.app,
                                     log=self.log)
            self.server.start()
        except:
            log.exception('Unable to start PyDAP server')
            raise
Exemplo n.º 11
0
 def on_quit(self):
     SimpleProcess.on_quit(self)
     self.listener.stop()
Exemplo n.º 12
0
    def on_start(self):
        SimpleProcess.on_start(self)

        overflow_listener = EventSubscriber(event_type='IngestionOverflow',queue_name='ingestion_balancer', callback=self.recv_event)
        self.listener = overflow_listener.start()