#定義三大元件的名稱
########採集靜態檔案
#啟動命令
bin/flume-ng agent -c conf/ -f dir-hdfs.conf -n ag1 -dflume.root.logger=info,console 將日誌列印在控制台,實際情況中將其放入黑洞中
配置如下:
ag1.sources = source1
ag1.sinks = sink1
ag1.channels = channel1
# 配置source元件
ag1.sources.source1.type = spooldir #spooldir是flume中自帶的讀目錄的一種source,它的行為特點是只要目錄中有新的檔案就會幫你讀走
ag1.sources.source1.spooldir = /root/log/ #具體讀的目錄
ag1.sources.source1.filesuffix=.finished #檔案被讀取完畢後的檔案字尾
ag1.sources.source1.deserializer.maxlinelength=5120
## roll:滾動切換:控制寫檔案所生成的檔案的切換規則。這三個那個滿足就會執行哪個,如果指定用哪乙個的話,其他兩個等於0即可!!!切記不可以給其他兩條注釋,不然滾動檔案不准
## 按檔案體積(位元組)來切,512000相當於500k
ag1.sinks.sink1.hdfs.rollsize = 512000
## 按event條數切 ,1000000相當於1000000條資料切換一次檔案
ag1.sinks.sink1.hdfs.rollcount = 1000000
## 按時間間隔切換檔案,60相當於60秒
ag1.sinks.sink1.hdfs.rollinterval = 60
## 控制生成目錄的規則
ag1.sinks.sink1.hdfs.round = true #要不要切,要
ag1.sinks.sink1.hdfs.roundvalue = 10 #多久切一次
ag1.sinks.sink1.hdfs.roundunit = minute #十分鐘切一次
ag1.sinks.sink1.hdfs.uselocaltimestamp = true #使用本地時間戳來取時間,就可以把/%y-%m-%d/%h-%m時間替換掉
# channel元件配置
ag1.channels.channel1.type = memory
## event條數
ag1.channels.channel1.capacity = 500000
##flume事務控制所需要的快取容量600條event
ag1.channels.channel1.transactioncapacity = 600
# 繫結source、channel和sink之間的連線
ag1.sources.source1.channels = channel1
ag1.sinks.sink1.channel = channel1
啟動命令:
[ ]# bin/flume-ng agent -c conf/ -f dir-hdfs.conf -n ag1 -dflume.root.logger=info,console
將日誌列印在前台,實際過程放在黑洞
flume常用採集動態檔案配置
tail hdfs.conf 這個是解決動態檔案,檔案裡,邊放邊採集 用tail命令獲取資料,下沉到hdfs 啟動命令 bin flume ng agent c conf f tail hdfs.conf n ag1 dflume.root.logger info,console 定義三大元件的名稱...
flume配置 動態檔案採集
定義三大元件的名稱 ag1.sources source1 ag1.sinks sink1 ag1.channels channel1 配置source元件 ag1.sources.source1.type exec ag1.sources.source1.command tail f root l...
flume配置採集日誌
上傳dir hdfs.conf 到flume的conf目錄下 定義三大元件的名稱 ag1.sources source1 ag1.sinks sink1 ag1.channels channel1 配置source元件 ag1.sources.source1.type spooldir ag1.so...