fox111 发表于 2015-11-27 20:17:41

flume-ng开发自己的source两种方法

  第一种方法;继承AbstractSource抽象类并实现EventDrivenSource,Configurable接口:代码如下:
  import org.apache.flume.conf.Configurable;
  import org.apache.flume.source.AbstractSource;
  public class TailSource extendsAbstractSource implementsEventDrivenSource,Configurable {
      public void configure(Context context) {}
      public synchronizedvoid start() {}
      public synchronized voidstop() {}
  }
  第二种方法:继承AbstractSource抽象类并实现Configurable, PollableSource接口:代码如下:
  importorg.apache.flume.conf.Configurable;

  importorg.apache.flume.source.AbstractSource;
  public class TailSource extendsAbstractSource implementsConfigurable,PollableSource {
      publicvoid configure(Context context) {}
      //这个方法在PollableSourceRunner类中会被一个线程不断的调用

      public Status process() throws EventDeliveryException {
        returnnull;
      }
      publicsynchronized void start() {}
      publicsynchronized void stop() {}
页: [1]
查看完整版本: flume-ng开发自己的source两种方法