Actor.__init__(self, name) self.createQueue("inbox") self.registerConsumer(self.consume, self.queuepool.inbox) def consume(self, event): self.logging.info("Received event.") sleep(0.5) # gevent_profiler.set_stats_output('my-stats.txt') # gevent_profiler.set_summary_output('my-summary.txt') # gevent_profiler.set_trace_output('my-trace.txt') # gevent_profiler.attach() #Initialize router router = Default(interval=1, rescue=False, uuid=False) router.registerLogModule(STDOUT, "logs_out") router.registerMetricModule(STDOUT, "metrics_out") router.register(Input, "input") router.register(Output, "output") router.connect("input.outbox", "output.inbox") #start router.start() router.block() # gevent_profiler.detach()
'broker_tag': "test" }, "data": str(x) }) x += 1 looper += 1 except: break #Initialize router router = Default(interval=1, rescue=False, uuid=False) router.registerLogModule((LogFormatFilter, "logformatfilter", 0), "inbox", debug=False) router.registerMetricModule((Graphite, "graphite", 0), "inbox") router.register((STDOUT, "stdout", 0)) router.register((Null, "null", 0)) router.connect("logformatfilter.outbox", "stdout.inbox") router.connect("graphite.outbox", "null.inbox") #Feedback loop router.register((Header, "header", 0), header={ 'broker_exchange': "", 'broker_key': "test", 'broker_tag': "test" }) router.register((AMQP, "broker", 0), host="sandbox", consume_queue="test") router.connect("broker.inbox", "header.inbox") router.connect("header.outbox", "broker.outbox")
try: self.queuepool.outbox.put({"header": {}, "data": "X"}) except: self.queuepool.outbox.waitUntilPutAllowed() #Initialize router router = Default(interval=1, rescue=False, uuid=False) #Organize log flow router.registerLogModule((Filter, "logformatfilter", 0)) router.register((STDOUT, "stdout", 0)) router.connect("logformatfilter.outbox", "stdout.inbox") #Organize metric flow router.registerMetricModule((Graphite, "graphite", 0)) router.register((TCP, 'graphite_out', 0), host="graphite-001", port=2013, stream=True) router.connect("graphite.outbox", "graphite_out.inbox") #Organize data flow router.register((XGenerator, "xgenerator", 0)) router.register((Null, "null", 0)) router.register((STDOUT, "events_stdout", 0)) router.connect("xgenerator.outbox", "null.inbox") #start router.start() router.block()
looper=0 while self.loop(): try: if looper == 100: looper=0 sleep() self.queuepool.outbox.put({"header":{},"data":str(x)}) x+=1 looper+=1 except: break router = Default(interval=1, rescue=False, uuid=False) router.registerLogModule((LogFormatFilter, "logformatfilter", 0), "inbox", debug=False) router.registerMetricModule((Graphite, "graphite", 0), "inbox") router.register((STDOUT, "stdout_logs", 0)) router.register((STDOUT, "stdout", 0)) router.register((NumberGenerator, "numbergenerator1", 0)) router.register((NumberGenerator, "numbergenerator2", 0)) router.register((Funnel, "funnel", 0)) #logs & metrics router.connect("logformatfilter.outbox", "stdout_logs.inbox") #events router.connect("numbergenerator1.outbox", "funnel.one") router.connect("numbergenerator2.outbox", "funnel.two") router.connect("funnel.outbox", "stdout.inbox")
Actor.__init__(self, name, setupbasic=False) self.createQueue("inbox", size) self.registerConsumer(self.consume, self.queuepool.inbox) def consume(self, event): self.logging.info("Received event.") sleep(5) #Initialize router router = Default(interval=1, rescue=False, uuid=False) #Organize log flow router.registerLogModule(LogLevelFilter, "loglevelfilter") router.register(STDOUT, "stdout") router.connect("loglevelfilter.outbox", "stdout.inbox") #Organize metric flow router.registerMetricModule(Null, "null") #Organize data flow router.register(Input, "input") router.register(Forwarder, "forwarder") router.register(Output, "output") router.connect("input.outbox", "forwarder.inbox") router.connect("forwarder.outbox", "output.inbox") #start router.start() router.block()
from wishbone.module import Null from wishbone.module import LogLevelFilter from wishbone.module import STDOUT from wishbone.module import Header from wishbone.module import TestEvent from wishbone.module import Fanout from wb_output_mqtt import MQTT from gevent import sleep, spawn #Initialize router router = Default(interval=1, rescue=False, uuid=False) #organize eventstream router.registerMetricModule(Null, "null") #organize logstream router.registerLogModule(LogLevelFilter, "loglevelfilter") router.register(STDOUT, "stdout_logs") router.connect("loglevelfilter.outbox", "stdout_logs.inbox") router.register(TestEvent, "testevent", interval=0) router.register(Header, "header", header={"mqtt": {"topic": "my/topic"}}) router.register(MQTT, "mqtt", client_id="blah", host="127.0.0.1") router.connect("testevent.outbox", "header.inbox") router.connect("header.outbox", "mqtt.inbox") #start router.start()
Actor.__init__(self, name, setupbasic=False) self.createQueue("outbox") spawn(self.generate) def generate(self): context_switch_loop = self.getContextSwitcher(100, self.loop) while context_switch_loop.do(): try: self.queuepool.outbox.put({"header":{},"data":"X"}) except: break #Initialize router router = Default(interval=1, rescue=False, uuid=False) #Organize log flow router.registerLogModule(STDOUT, "stdout") #Organize metric flow router.registerMetricModule(Graphite, "graphite") router.register(TCP, 'graphite_out', host="graphite-001", port=2013) router.connect("graphite.outbox", "graphite_out.inbox") #Organize data flow router.register(XGenerator, "xgenerator") router.register(Null, "null") router.connect("xgenerator.outbox", "null.inbox") #start router.start() router.block()
from wb_input_dictgenerator import DictGenerator from wb_output_tcp import TCP from wb_output_mongodb import MongoDB from gevent import sleep, spawn #Initialize router router = Default(interval=1, context_switch=100, rescue=False, uuid=False) #organize log flow router.registerLogModule(LogLevelFilter, "loglevelfilter") router.register(STDOUT, "stdout_logs") router.connect("loglevelfilter.outbox", "stdout_logs.inbox") #organize metric flow router.registerMetricModule(Graphite, "graphite") router.register(TCP, 'graphite_out', host="graphite-001", port=2013, stream=True) router.connect("graphite.outbox", "graphite_out.inbox") #organize event flow router.register(DictGenerator, "dictgenerator", max_elements=10, sleep=1) router.register(MongoDB, "mongodb", host="sandbox", capped=True, drop_db=False) router.connect("dictgenerator.outbox", "mongodb.inbox") #start router.start() router.block()