从Kafka Connect Transformer中的主题暂停/停止接收器消耗

时间:2019-01-21 08:48:26

标签: scala apache-kafka kafka-consumer-api apache-kafka-connect

我创建了一个转换器,该转换器可以对ConnectRecord进行一些转换,以用于Kafka Connect工作者。

Transformer可以正常工作,但是我希望它在发现特定条件(错误)时阻止接收器使用特定主题的消息。

此刻,代码立即引发异常,使工作人员陷入停顿。尽管有效,但这也可能影响其他主题,并且似乎是不得已的方法。

是否可以通过一种好方法停止/暂停使用Kafka Connect Transformation代码中的主题?

class ApplySchemaTransformation[T <: ConnectRecord[T]]
    extends Transformation[T]
    with ContentTypeHandler[T] {

   override def apply(record: T): T = {
     if ([some criteria]) {
       [ok code]
     } else {
       [stop consumer]
     }
   }

   override def config(): ConfigDef = ...

   override def close(): Unit = {}

   override def configure(configs: java.util.Map[String, _]): Unit = ...
}

0 个答案:

没有答案