Flume 定制化

Posted by danner on May 22, 2018

大数据生态圈提供了很多的组件让我们搭建,很方便。但业务上有些功能原有组件不满足或者有问题,这时需要我们修改源码去定制化自己的组件。本例讲的 Flume 的修改。

下载源码:http://archive.cloudera.com/cdh5/cdh/5/flume-ng-1.6.0-cdh5.15.1-src.tar.gz

解压后直接导入 IDEA,开始编译

  • pom 清单中 repositories 里的 https 都修改为 http
  • flume-ng-sinks 目录下的 pom 清单中 flume-ng-morphline-solr-sink 注释,此模块无法下载且不会使用
  • mvn clean compile validate -Denforcer.skip=true,只编译
  • ` mvn install -Dmaven.test.skip=true `,生成 bin 安装包

安装包在 flume-ng-dist\target 目录

Taildir 实现递归

Taildir 文件重命名后重复采集

HDFS 分区

自定义组件集成

Flume 自定义组件

参考

Flume TaildirSource 实现递归
Flume1.7.0 taildirSource bug 修复——文件重命名后重复采集数据