Flume经典案例之实时监控多个新文件(保姆级教程)

准备工作:

1、准备多个大文件,以备后面使用
2、提前创建好目录和文件上传至linux中

操作步骤:

1、首先先将我们要操作的文件拷贝到指定的文件夹下,方便一会使用命令和写配置文件
命令cp events.csv flumelogfile/events/events_2021-12-26.csv

2、创建events-flume-logger.conf
内容如下:

events.sources=eventsSource
events.channels=eventsChannel
events.sinks=eventsSink

events.sources.eventsSource.type=spooldir
events.sources.eventsSource.spoolDir=/opt/kb15tmp/flumelogfile/events
events.sources.eventsSource.deserializer=LINE
events.sources.eventsSource.deserializer.maxLineLength=32000
events.sources.eventsSource.includePattern=events_[0-9]{4}-[0-9]{2}-[0-9]{2}.csv

events.channels.eventsChannel.type=file
events.channels.eventsChannel.checkpointDir=/opt/kb15tmp/checkpoint/events
events.channels.eventsChannel.dataDirs=/opt/kb15tmp/checkpoint/data/events

events.sinks.eventsSink.type=logger

events.sources.eventsSource.channels=eventsChannel
events.sinks.eventsSink.channel=eventsChannel

sources以spooldir的形成监控磁盘文件,还可以用来监控新文件,channels以memory的形式将event数据存储在内存中,sinks以logger的形式将内容写入到日志中。

3、执行命令
进入到flume目录下,执行命令./bin/flume-ng agent --name events --conf conf/ --conf-file conf/KB15conf/events-flume-logger.conf -Dflume.root.logger=INFO,console

4、执行结果
因为执行的文件大小非常大,处理数据需要一定时间,在flume执行完成的时候,可以看到文件名有.COMPLETED后缀,说明执行完成了。
Flume经典案例之实时监控多个新文件(保姆级教程)

上一篇:Flume的四个入门案例(官方)


下一篇:大数据离线处理数据项目(一) 网站日志文件数据采集 日志拆分 数据采集到HDFS并进行预处理