您好,登錄后才能下訂單哦!
這篇文章主要介紹“flume多路復用怎么寫”,在日常操作中,相信很多人在flume多路復用怎么寫問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”flume多路復用怎么寫”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
一、編寫目地
通過對flume組件的了解,除使用攔截器外,還可以對源碼修改或自定義源。本次測試使用的是對源碼修改。使用虛擬搭建flume + kafka環境,編寫功能簡單的多路復用,主要是用flume的exec收集數據源,放入到logger、hdfs、kafka隊列。
二、編譯環境說明
1、jdk版本:jdk1.7.0_80 注:根據pom.xml中要求flume-ng-1.6.0需要在jdk1.7中編譯,使jdk1.8可能會存在問題
2、flume版本:flume-ng-1.6.0-cdh6.7.0
3、maven版本:apache-maven-3.3.9
三、Flume源碼的修改
3、用maven編譯flume-ng-1.6.0-cdh6.7.0源碼
3.1、下載flume
cd /opt/sourcecode
wget http://archive.cloudera.com/cdh6/cdh/5/flume-ng-1.6.0-cdh6.7.0-src.tar.gz
tar -zxvf flume-ng-1.6.0-cdh6.7.0-src.tar.gz
3.2、修改源碼:
cd /opt/sourcecode/flume-ng-1.6.0-cdh6.7.0/flume-ng-core/src/main/java/org/apache/flume/source
在ExecSource.java中增加如下代碼:
vi ExecSource.java
// 創建map(注:在源碼中336行增加)
<repository>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
<checksumPolicy>warn</checksumPolicy>
</releases>
<id>conjars</id>
<name>Conjars</name>
<url>http://conjars.org/repo</url>
<layout>default</layout>
</repository>
到此,關于“flume多路復用怎么寫”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。