处理本地时间的EPL语句在Esper中不起作用。我正在使用版本5.3.0。我似乎没有时间去表现任何事情。
timer:within(1 sec)
我在使计时器起作用时遇到问题。无论and
为何,我都有timer:within(1 sec)
语句附加到EPL语句和EPL语句函数。
答案 0 :(得分:0)
如果您选择自己控制时间,则需要继续将CurrentTimeEvent-s发送给“告诉” Esper几点钟(Esper根本不会增加您的时间。如果您发送一个事件来告诉Esper今天是今天10:00 am,时间保持为10:00 am,直到您发送另一个CurrentTimeEvent事件为止,该事件不会随着程序的继续运行而发生变化。
如果您使用带有“ timer:within”和类似基于时间的功能的语句,则可能需要有一个单独的线程,该线程不断每xxx毫秒/秒发送一次CurrentTimeEvent -s,以使这些语句按预期运行。
根据我的经验,当您要“重播”事件时,自己控制时间非常有用。如果在事件到达Esper之前存储事件,则以后可以通过从存储中加载所有事件并将其发送到Esper(在每个实际事件对象之前带有CurrentTimeEvent事件),来精确复制当天发生的事件。