從bin/flume 這個shell腳本可以看到Flume的起始於org.apache.flume.node.Application類,這是flume的main函數所在。 main方法首先會先解析shell命令,如果指定的配置文件不存在就甩出異常。 根據命令中含有 ...
上一篇文章分析了Flume如何加載配置文件的,動態加載也只是重復運行getConfiguration 。 本篇分析加載配置文件后各個組件是如何運行的 加載完配置文件訂閱者Application類會收到訂閱信息執行: MaterializedConfiguration conf就是getConfiguration 方法獲取的配置信息,是SimpleMaterializedConfiguration ...
2014-04-29 17:26 1 2140 推薦指數:
從bin/flume 這個shell腳本可以看到Flume的起始於org.apache.flume.node.Application類,這是flume的main函數所在。 main方法首先會先解析shell命令,如果指定的配置文件不存在就甩出異常。 根據命令中含有 ...
org.apache.flume.source.SpoolDirectorySource是flume的一個常用的source,這個源支持從磁盤中某文件夾獲取文件數據。不同於其他異步源,這個源能夠避免重啟或者發送失敗后數據丟失。flume可以監控文件夾,當出現新文件時會讀取該文件並獲取數據 ...
org.apache.flume.sink.RollingFileSink 這個類比較簡單。 source的種類有兩種:一種是PollableSource;另外一種是EventDrivenSource。前者“必須有它自己的callback機制,該機制用於捕獲新數據並將數據存儲到通道中 ...
有的時候希望通過Flume將讀取的文件再細分存儲,比如講source的數據按照業務類型分開存儲,具體一點比如類似:將source中web、wap、media等的內容分開存儲;比如丟棄或修改一些數據。這時可以考慮使用攔截器Interceptor。 flume通過攔截器實現修改和丟棄事件 ...
前言 之前一直在用flume收集數據,也做了一些插件開發,但是一直沒整理相關的知識,最近感覺老是有一種知其然不知其所以然的感覺,所以從源碼入手希望能更透徹一點吧,越來越感覺會用不能掌握啊!別人幾個為啥就low了! 1.啟動入口 估計沒人關注過啟動入口在什么地方吧?啟動不報錯就可以直接 ...
org.apache.flume.channel.MemoryChannel類是Flume-NG的memory-channel。 private LinkedBlockingDeque<Event> queue;//mem-channel存放數據的地方 private ...
)、org.apache.flume.channel.file.proto共計40個源碼文件。 一、config ...
在AbstractConfigurationProvider類中loadSinks方法會調用loadSinkGroups方法將所有的sink和sinkgroup放到了Map<String, ...