1、配置文件case2_avro.conf
#配置内容
#name the component on this agent
a1.sources = r1
a1.channels= c1
a1.sinks = k1
#describe/configure the source
a1.sources.r1.type = avro
a1.sources.r1.bind = 0.0.0.0
a1.sources.r1.port = 41414
a1.sources.r1.channels = c1
#decribe the sink
a1.sinks.k1.type = logger
a1.sinks.k1.channel = c1
#use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 100
a1.channels.c1.transactionCapacity = 100
#start flume agent
flume-ng agent -c ../conf -f case2_avro.conf -n a1 -Dflume.root.logger=INFO,console
#创建指定文件
echo "hello world !" >> /usr/logs/avro.log
#使用avro-client发送文件
flume-ng avro-client -c ../conf -H localhost -p 41414 -F /usr/logs/avro.log
2、文件名case3_exec.conf
#配置内容
#name the component on this agent
a1.sources = r1
a1.channels= c1
a1.sinks = k1
#describe/configure the source
a1.sources.r1.type = exec
a1.sources.r1.command= cat /usr/logs/log.10
a1.sources.r1.channels = c1
#decribe the sink
a1.sinks.k1.type = logger
a1.sinks.k1.channel = c1
#use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 100
a1.channels.c1.transactionCapacity = 100
#start flume agent
flume-ng agent -c ../conf -f case3_exec.conf -n a1 -Dflume.root.logger=INFO,console
#追加内容到指定文件
/usr/logs/log.10
3、文件名case4_spool.conf
#配置内容
#name the component on this agent
a1.sources = r1
a1.channels= c1
a1.sinks = k1
#describe/configure the source
a1.sources.r1.type = spooldir
a1.sources.r1.spoolDir = /usr/logs/flumespool
a1.sources.r1.fileHeader= true
a1.sources.r1.channels = c1
#decribe the sink
a1.sinks.k1.type = logger
a1.sinks.k1.channel = c1
#use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 100
a1.channels.c1.transactionCapacity = 100
4、文件名case5_syslogtcp.conf
#配置内容
#name the component on this agent
a1.sources = r1
a1.channels= c1
a1.sinks = k1
#describe/configure the source
a1.sources.r1.type = syslogtcp
a1.sources.r1.host = localhost
a1.sources.r1.port= 5140
a1.sources.r1.channels = c1
#decribe the sink
a1.sinks.k1.type = logger
a1.sinks.k1.channel = c1
#use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 100
a1.channels.c1.transactionCapacity = 100
启动同上
测试
echo "hello world" |nc localhost 5140
5、文件名case6_syslogudp.conf
#配置内容
#name the component on this agent
a1.sources = r1
a1.channels= c1
a1.sinks = k1
#describe/configure the source
a1.sources.r1.type = syslogudp
a1.sources.r1.host = localhost
a1.sources.r1.port= 5140
a1.sources.r1.channels = c1
#decribe the sink
a1.sinks.k1.type = logger
a1.sinks.k1.channel = c1
#use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 100
a1.channels.c1.transactionCapacity = 100
启动同上
测试
echo "hello world" |nc localhost 5140
6、文件名cae7_httppost.conf
#配置内容
#name the component on this agent
a1.sources = r1
a1.channels= c1
a1.sinks = k1
#describe/configure the source
a1.sources.r1.type = org.apache.flume.source.http.HTTPSource
a1.sources.r1.port= 5140
a1.sources.r1.channels = c1
#decribe the sink
a1.sinks.k1.type = logger
a1.sinks.k1.channel = c1
#use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 100
a1.channels.c1.transactionCapacity = 100
启动同上
测试
curl -X POST -d '[{"headers": {"namenode":"xx1","datanode":"xx2"},"body":"really_random_body"}]' http://localhost:5140