【发布时间】:2021-05-27 18:44:10
【问题描述】:
我有一个应用程序,我使用连接器将数据保存到数据库。 我想通过删除具有特定属性的消息来过滤保存的消息。 我的消息是这样的:
{
field_a : value,
field_b : value,
field_c : possible very long value
}
所以,我在 kafka 连接器中使用了这样的 Confluent 过滤器:
transforms: filterSpam
transforms.filterSpam.type: io.confluent.connect.transforms.Filter$Value
transforms.filterSpam.filter.condition: $[?(@.field_c =~ /^.{32000,}$/)]
transforms.filterSpam.filter.type: exclude
transforms.filterSpam.missing.or.null.behavior: include
由于某种原因,过滤器无法正常工作。所有消息都通过。
我也尝试过否定:
$[?(!(@.field_c =~ /^.{1,32000}$/))]
在这种情况下,很长的被过滤掉了,但一些较短的也被过滤掉了。
我不明白问题出在哪里。有什么帮助吗?
【问题讨论】:
标签: apache-kafka apache-kafka-connect confluent-platform jsonpath