1. 监控单文件
当被监控的文件有新内容写入,就会上传到 hdfsbin/flume-ng agent --conf conf/ --name a1 --conf-file job/flume-file-hdfs.conf
a1.sources = r1a1.sinks = k1a1.channels = c1a1.sources.r1.type = execa1.sources.r1.command = tail -F /tmp/root/hive.loga1.channels.c1.type = memorya1.channels.c1.capacity = 1000a1.channels.c1.transactionCapacity = 100a1.sinks.k1.type = hdfsa1.sinks.k1.hdfs.path = hdfs://hd01:8020/flume/%Y%m%d/%Ha1.sinks.k1.hdfs.filePrefix = logs-a1.sinks.k1.hdfs.round = truea1.sinks.k1.hdfs.roundValue = 1a1.sinks.k1.hdfs.roundUnit = houra1.sinks.k1.hdfs.useLocalTimeStamp = truea1.sinks.k1.hdfs.batchSize = 100a1.sinks.k1.hdfs.fileType = DataStreama1.sinks.k1.hdfs.rollInterval = 60a1.sinks.k1.hdfs.rollSize = 134217700a1.sinks.k1.hdfs.rollCount = 0a1.sources.r1.channels = c1a1.sinks.k1.channel = c1
2. 监控目录新文件
当被监控的目录有新文件的创建,就会上传到 hdfsbin/flume-ng agent --conf conf/ --name a1 --conf-file job/flume-dir-hdfs.conf
a1.sources = r1a1.sinks = k1a1.channels = c1a1.sources.r1.type = spooldira1.sources.r1.spoolDir = /usr/local/flume-1.9.0/dokshare/uploada1.sources.r1.fileSuffix = .COMPLETEDa1.sources.r1.fileHeader = truea1.sources.r1.ignorePattern = ([^ ]*\.tmp)a1.channels.c1.type = memorya1.channels.c1.capacity = 1000a1.channels.c1.transactionCapacity = 100a1.sinks.k1.type = hdfsa1.sinks.k1.hdfs.path = hdfs://hd01:8020/flume/upload/%Y%m%d/%Ha1.sinks.k1.hdfs.filePrefix = upload-a1.sinks.k1.hdfs.round = truea1.sinks.k1.hdfs.roundValue = 1a1.sinks.k1.hdfs.roundUnit = houra1.sinks.k1.hdfs.useLocalTimeStamp = truea1.sinks.k1.hdfs.batchSize = 100a1.sinks.k1.hdfs.fileType = DataStreama1.sinks.k1.hdfs.rollInterval = 60a1.sinks.k1.hdfs.rollSize = 134217700a1.sinks.k1.hdfs.rollCount = 0a1.sources.r1.channels = c1a1.sinks.k1.channel = c1
3. 监控目录下多个追加吸入文件
监听多个实时追加的文件(可以实现断点续传),并上传到 hdfsbin/flume-ng agent -c conf/ -n a1 -f job/flume-taildir-hdfs.conf
a1.sources = r1a1.sinks = k1a1.channels = c1a1.sources.r1.type = TAILDIRa1.sources.r1.positionFile = /usr/local/flume-1.9.0/dokshare/taildir/tail_dir.jsona1.sources.r1.filegroups = f1 f2a1.sources.r1.filegroups.f1 = /usr/local/flume-1.9.0/taildir/files/.*file.*a1.sources.r1.filegroups.f2 = /usr/local/flume-1.9.0/taildir/files2/.*log.*a1.channels.c1.type = memorya1.channels.c1.capacity = 1000a1.channels.c1.transactionCapacity = 100a1.sinks.k1.type = hdfsa1.sinks.k1.hdfs.path = hdfs://hd01:8020/flume/taildir/%Y%m%d/%Ha1.sinks.k1.hdfs.filePrefix = upload-a1.sinks.k1.hdfs.round = truea1.sinks.k1.hdfs.roundValue = 1a1.sinks.k1.hdfs.roundUnit = houra1.sinks.k1.hdfs.useLocalTimeStamp = truea1.sinks.k1.hdfs.batchSize = 100a1.sinks.k1.hdfs.fileType = DataStreama1.sinks.k1.hdfs.rollInterval = 60a1.sinks.k1.hdfs.rollSize = 134217700a1.sinks.k1.hdfs.rollCount = 0
