准备工作:
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后缀,说明执行完成了。