2017-09-07 45 views
0

我有esper processer配置为在kafka中侦听邮件。如何在给定的时间内没有传入事件触发esper

通常select * from events.win:time(2 min)将触发最近2分钟内的所有事件 现在,如果最后2分钟没有卡夫卡消息,我想触发通知。

我应该怎么处理它,当我喜欢写东西 select * from events(Ip='1.1.1.1').win:time(2 min) 这不会有匹配的邮件/事件和超能力者不触发。

我应该如何触发超能力者,如果事件在给定的时间没有提前

感谢

回答

1

你能做到这一点

select * from pattern [every (timer:interval(2 min) and not MyEvent)] 

//提示:不要叫你的事件“事件“,叫它有用的,并使用大写

+0

谢谢!我一天后想到了这一点,你回答的是完全正确的。早些时候,我尝试了'select count(*)from myEvents.win:time(1 min)'1> count(*)'这不起作用 - 最后我遇到了上述解决方案。 –

+0

在我的实际代码中,这不是事件,我认为社区成员可以很容易理解我的问题,所以我使用'events'。感谢指出它 –