FlinkKafkaConsumer010<ObjectNode> myConsumer = new
FlinkKafkaConsumer010<>("demo", new JSONDeserializationSchema(),
properties);
DataStream<ObjectNode> dataStream =
env.addSource(myConsumer);
dataStream.windowAll(SlidingEventTimeWindows.of(Time.hours(1),
Time.minutes(1)))
Pattern<MonitoringEvent, ?> warningPattern =
Pattern.<ObjectNode>begin("First Event")
.where(new IterativeCondition<ObjectNode>() {
@Override
public boolean filter(ObjectNode jsonNodes,
Context<ObjectNode> context) throws Exception {
return jsonNodes.get("property").equals("test")
}
});
PatternStream<ObjectNode> patternStream = CEP.pattern(keyedStream, pattern);
DataStream<Alert> alarms = patternStream
.select(new PatternSelectFunction<ObjectNode,
Alert>() {
private static final long serialVersionUID
= 1L;
public Alert select(Map<String,
List<ObjectNode>> map) throws Exception {
System.out.println(timeW);
return new Alert("UniverseId:"
+universe + "RuleLabel:" +rule.getRuleLabel() +"Value:"+
map.get("beforeCriteriaFilter").get(0));
}
}).keyBy(alert -> alert.getMessage());
[image: Satır içi resim 1]
If pattern matched on windows2, how can i get window2(time or another
property) ?
2017-11-01 17:59 GMT+03:00 miki haiat <[email protected]>:
> Can you post the code please
>
> On 1 Nov 2017 16:58, "Erdem erdfem" <[email protected]> wrote:
>
> > Hello,
> >
> > I have a datastream with sliding windows. I want to ask how can i get
> > which window pattern matches?
> > ex window 3 : 11m-21m
> >
> > [image: Satır içi resim 1]
> >
>