Flume(4)實用環境搭建:source(spooldir)+channel(file)+sink(hdfs)方式

1、概述:

在實際的生產環境中,通常都會遇到將web服務器好比tomcat、Apache等中產生的日誌倒入到HDFS中供分析使用的需求。這裏的配置方式就是實現上述需求。web

2、配置文件:

#agent1 name
agent1.sources=source1
agent1.sinks=sink1
agent1.channels=channel1


#Spooling Directory
#set source1
agent1.sources.source1.type=spooldir
agent1.sources.source1.spoolDir=/opt/flumetest/data

agent1.sources.source1.channels=channel1
agent1.sources.source1.fileHeader = false
agent1.sources.source1.interceptors = i1
agent1.sources.source1.interceptors.i1.type = timestamp

#set sink1
agent1.sinks.sink1.type=hdfs
agent1.sinks.sink1.hdfs.path=/home/hdfs/flume/logs
agent1.sinks.sink1.hdfs.fileType=DataStream
agent1.sinks.sink1.hdfs.writeFormat=TEXT
agent1.sinks.sink1.hdfs.rollInterval=1
agent1.sinks.sink1.channel=channel1
agent1.sinks.sink1.hdfs.filePrefix=%Y-%m-%d

#set channel1
agent1.channels.channel1.type=file
agent1.channels.channel1.checkpointDir=/opt/flumetest/cp/point
agent1.channels.channel1.dataDirs=/opt/flumetest/cp

3、執行下述命令:

執行以前先確保上面配置文件中定義的文件夾都已經存在。tomcat

bin/flume-ng agent -n agent1 -c conf -f study/logs2hdfs.conf -Dflume.root.logger=DEBUG,console

source文件夾中的日誌列表以下:服務器

image

4、查看hdfs中的數據:

image

能夠看到裏面的數據文件都很小,這跟配置有關係,由於sink的配置裏rollInterval配置的時間間隔過小致使的。能夠根據需求在進行調整。spa

相關文章
相關標籤/搜索