第一个案例:flume采集网络端口的数据
第二个案例:监控某一个目录下面的所有的文件,只要目录下面有文件,收集文件内容,上传到hdfs上面去
sink:hdfsSink
source: spooldir
spooldir特性:
1、监视一个目录,只要目录中出现新文件,就会采集文件中的内容
2、采集完成的文件,会被agent自动添加一个后缀:COMPLETED
3、所监视的目录中不允许重复出现相同文件名的文件(flume比较脆弱,一旦抛异常,就会停止工作,只能手动重启)
channel:memory channel
hdfs sink文件大小的控制策略
将我们的数据放到hdfs上面去,要避免产生大量的小文件
可以控制我们的flume的采集数据的频率
文件采集策略:
多长时间采集一次
文件多大采集一次
定义文件多长时间采集一次
a1.sinks.k1.hdfs.round = true
a1.sinks.k1.hdfs.roundValue = 10
a1.sinks.k1.hdfs.roundUnit = minute
定义文件多大的时候采集一次
a1.sinks.k1.hdfs.rollInterval = 3
a1.sinks.k1.hdfs.rollSize = 20
a1.sinks.k1.hdfs.rollCount = 5
a1.sinks.k1.hdfs.batchSize = 1
a1.sinks.k1.hdfs.useLocalTimeStamp = true
启动flume
bin/flume-ng agent -c conf -f conf/spooldir.conf -n a1 -Dflu