AK4*_*647 9 apache-kafka apache-kafka-streams
要求是,如果在输入主题的 2 分钟时间窗口内未收到某个键的预期“最终”事件(从事件负载中的 EvenType 字段标识),则发送警报。我尝试使用suppress(),如下所示:
events
.groupByKey()
.windowedBy(TimeWindows.of(Duration.ofMinutes(2)))
.reduce((oldValue, newValue) -> newValue, Materialized.as(....))
.suppress(Suppressed.untilWindowClose(BufferConfig.unbounded()))
.filter(event -> !event.getEventType().equals("FINAL") )
.toStream()
.foreach( /* Send that email! */)
Run Code Online (Sandbox Code Playgroud)
基于这个博客。
但是,由于抑制()基于事件时间,因此如果未收到下一个或“最终”事件,则时间不会前进,并且根本不会发送警报。当基于挂钟时间经过 2 分钟时,如何将挂钟时间与 Suppress() 一起使用来发出事件?
归档时间: |
|
查看次数: |
943 次 |
最近记录: |