gpt4 book ai didi

java - Esper:注意,当事件数量(具有特定参数)超过阈值时

转载 作者:行者123 更新时间:2023-12-01 15:47:23 27 4
gpt4 key购买 nike

寻找解决方案已经很长时间了:

我有一份联系表。每次有人通过它发送邮件时,都会向 Esper 发出 ContactEvent(receiver, senderIpAddress)。现在,当特定 IP 地址在 10 分钟内发出超过 50 个联系事件时,我希望 Esper 通知我。

以下代码中的语法错误是由于代码简化所致

create window ContactWindow.win:time(10 min) as select ipAddress, mail from ContactEvent 

然后我像这样填充它:

insert into ContactWindow select ipAddress, mail from ContactEvent";

最终,有一个类似这样的事件监听器:

select ip, count(ip) as cnt from ContactWindow  group by ip

这确实有效。这并不完全是我想要的,因为每次发出我的语句监听器时,IP 地址的消息计数都会发生变化。 (“IP X 在过去 10 分钟内发送了 43 条消息”,“IP X 在过去 10 分钟内发送了 44 条消息”,...)我只想让一个事件告诉我“IP X 在过去 10 分钟内超过 50 条消息”,另一个事件告诉我,它现在已经低于该边界。

有办法让它发挥作用吗?

最佳答案

也许添加一个 having clause 。在你的例子中

select ip, count(ip) as cnt from ContactWindow  group by ip having count(ip)>50

关于java - Esper:注意,当事件数量(具有特定参数)超过阈值时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6873169/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com