Flume 监控目录文件 spooldir
Flume应用场景中监控某个目录下的文件进行读取使用的很多,Flume通过source类型为spooldir来进行监控目录下文件,当新增文件时,Flume可将文件进行读取,开发者只需要编写对应的文件序列化器即可将读取的文件转存至HBase、HDFS、或者其他希望的数据格式。
test_agent.sources = test_source
test_agent.channels = test_channel
test_agent.sinks = test_sink
#设置source类型为监控目录类型
test_agent.sources.test_source.type = spooldir
#对应的channel名称
test_agent.sources.test_source.channels = test_channel
#要监控的目录
test_agent.sources.test_source.spoolDir = /data/kafka_test_data/ad/flume_test_channel
test_agent.sources.test_source.deserializer.maxLineLength = 10000
#设置channel类型为内存
test_agent.channels.test_channel.type = memory
test_agent.channels.test_channel.capacity = 100000
test_agent.channels.test_channel.transactionCapacity = 100000
#自定义的Flume sink
test_agent.sinks.test_sink.type = com.test.cdh.flume.sink.hbase.TestHbaseSink
#最终保存的数据格式为HBase
test_agent.sinks.test_sink.znodeParent = /hbase
#HBase所需要的Zookeeper地址列表
test_agent.sinks.test_sink.zookeeperQuorum = mimo42:2181,mimo43:2181,mimo44:2181
#自定义序列化器
test_agent.sinks.test_sink.serializer = com.test.cdh.flume.sink.hbase.serializer.TestHbaseEventSerializer
#对应的channel名称
test_agent.sinks.test_sink.channel = test_channel
test_agent.sinks.test_sink.batchSize = 1000
#用来表明是否为安全模式
test_agent.sinks.test_sink.safeMode=true