內容如下:
#定義三大元件的名稱,myagent可以自己定義
myagent.sources = source1
myagent.sinks = sink1
myagent.channels = channel1
# 配置source元件
myagent.sources.source1.type = spooldir
# 定義source型別,檔案目錄
myagent.sources.source1.spooldir = /home/gugu/testdata/
# 指定輸入目錄
myagent.sources.source1.filesuffix=.finished
# 指定採集結束後新增的檔案字尾
myagent.sources.source1.deserializer.maxlinelength=5120
# 單行最大位元組數,如果超過將被截斷
# 配置sink元件
myagent.sinks.sink1.type = hdfs
# sink的型別
myagent.sinks.sink1.hdfs.path =hdfs://master:9000/flume/test/log/%y-%m-%d/%h-%m
# 輸出的hdfs路徑
# 生成檔案的字首(收集到的檔案會被重新命名成隨機字串)
myagent.sinks.sink1.hdfs.filesuffix = .log
# 生成檔案的字尾
myagent.sinks.sink1.hdfs.batchsize= 128
# 當檔案達到多大時,重新整理到hdfs,單位mb
myagent.sinks.sink1.hdfs.filetype = datastream
# 輸出到hdfs中檔案型別,datastream原始檔案
myagent.sinks.sink1.hdfs.writeformat =text
# 寫到hdfs前的檔案格式,需要設定為text
## roll:滾動切換:控制寫檔案的切換規則(如果不需要這個規則,設定為0)
myagent.sinks.sink1.hdfs.rollsize = 512000
## 按檔案體積(位元組)來切
myagent.sinks.sink1.hdfs.rollcount = 1000000
## 按event條數切
myagent.sinks.sink1.hdfs.rollinterval = 60
## 按時間間隔切換檔案
## 控制生成目錄的規則
myagent.sinks.sink1.hdfs.round =
true
# 是否自動生成目錄
myagent.sinks.sink1.hdfs.roundvalue = 10
# 自動生成目錄的時間值
myagent.sinks.sink1.hdfs.roundunit = minute
# 自動 生成目錄的時間單位
myagent.sinks.sink1.hdfs.uselocaltimestamp =
true
# 是否使用本地的時間戳取時間
# channel元件配置
myagent.channels.channel1.type = memory
# channel將資料儲存的位置一般為memory/file
myagent.channels.channel1.capacity = 500000
## event條數
myagent.channels.channel1.transactioncapacity = 100
##flume事務控制所需要的快取容量100條event,如果失敗可以進行回滾
# 繫結source、channel和sink之間的連線
myagent.sources.source1.channels = channel1
myagent.sinks.sink1.channel = channel1
[gugu@master apache-flume-1.9.0-bin]$ bin/flume-ng agent -c conf/ -f conf/dir-hdfs.properties -n myagent -dflume.root.logger=info,console
啟動agent 配置檔案路徑 agent配置的檔案 agent的名字 日誌級別和列印到控制台
#最後乙個引數可以去掉,加上能看到日誌輸出,正式環境可以去掉,由於乙個配置檔案中可以配置多個agent,因此agent的名字要與配置檔案中定義的一致
列印日誌資訊
檢視路徑下的檔案
檢視hdfs上的檔案
在使用「myagent.channels.channel1.transactioncapacity」引數的時候需要注意,這個引數要大於「myagent.sources.source1.batchsize」,原因是source提供資料給channel,需要提供的資料量大於乙個事務的資料條數,預設兩個值都是100.
flume採集案例
1 採集目錄到hdfs 採集需求 某伺服器的某特定目錄下,會不斷產生新的檔案,每當有新檔案出現,就需要把檔案採集到hdfs中去 根據需求,首先定義以下3大要素 採集源,即source 監控檔案目錄 spooldir 下沉目標,即sink hdfs檔案系統 hdfs sink source和sink之...
Flume(03) Flume採集案例
需求分析 採集需求 某伺服器的某特定目錄 export servers dirfile下,會不斷產生新的檔案,每當有新檔案出現,就需要把檔案採集到hdfs中去。需求分析 通過flume採集資料,最重要的就是配置三大元件。這裡可以通過source來監控檔案目錄。通過channel,來將source採集...
flume配置採集日誌
上傳dir hdfs.conf 到flume的conf目錄下 定義三大元件的名稱 ag1.sources source1 ag1.sinks sink1 ag1.channels channel1 配置source元件 ag1.sources.source1.type spooldir ag1.so...