public static void main(String[] args) {
String siddhiApp = "@App:name('TestExecutionPlan') "
+ "define stream FooStream (teste string); "
+ "@info(name = 'query1') "
+ "@source(type ='rabbitmq', "
+ "uri = 'amqp://test:test@192.168.99.100:5672', "
+ "exchange.name = 'amq.topic', "
+ "exchange.type = 'topic', "
+ "routing.key= '#', "
+ "queue.name = 'siddhi-queue', "
+ "@map(type='text')) "
+ "Define stream BarStream (test string); "
+ "from FooStream select test insert into BarStream; ";
SiddhiManager siddhiManager = new SiddhiManager();
SiddhiAppRuntime siddhiAppRuntime = siddhiManager.createSiddhiAppRuntime(siddhiApp);
siddhiAppRuntime.start();
siddhiAppRuntime.addCallback("FooStream", new StreamCallback() {
public void receive(Event[] event) {
EventPrinter.print(event);
}
});
}
此代码无法从 rabbitmq 检索事件消息。
我可以看到到 rabbitmq 仪表板的连接和通道,所有发布到交换的消息都被传递到其他绑定队列。