Flume 學習(二) 使用

2022-07-19 00:06:21 字數 2969 閱讀 3980

一,前言

二,讀取目錄

三,讀取新增行

官方配置連線:點選進入

flume的使用是在任意的伺服器進行agent啟動。官方已經為我們寫好了很多source,sink,channel的元件,僅需要我們按照官方提供的文件進行配置,然後啟動即可。當然我們也可以自定製一下source和sink。在這我們就進行flume的演示,如有其他的需求,可以按照官方文件進行配置使用.

下面是乙個簡單的讀取目錄示意圖:

配置案例:

#

定義三大元件的名稱

ag1.sources =source1

ag1.sinks =sink1

ag1.channels =channel1

#配置source元件

ag1.sources.source1.type =spooldir

ag1.sources.source1.spooldir = /root/log/ag1.sources.source1.filesuffix=.finished

ag1.sources.source1.deserializer.maxlinelength=5120

#配置sink元件

ag1.sinks.sink1.type =hdfs

ag1.sinks.sink1.hdfs.path =hdfs://hdp-01:9000/access_log/%y-%m-%d/%h-%m

ag1.sinks.sink1.hdfs.filesuffix =.log

ag1.sinks.sink1.hdfs.batchsize= 100ag1.sinks.sink1.hdfs.filetype =datastream

ag1.sinks.sink1.hdfs.writeformat =text

## roll:滾動切換:控制寫檔案的切換規則

ag1.sinks.sink1.hdfs.rollsize = 512000 #

# 按檔案體積(位元組)來切

ag1.sinks.sink1.hdfs.rollcount = 1000000 #

# 按event條數切

ag1.sinks.sink1.hdfs.rollinterval = 60 #

# 按時間間隔切換檔案

## 控制生成目錄的規則

ag1.sinks.sink1.hdfs.round =true

ag1.sinks.sink1.hdfs.roundvalue = 10ag1.sinks.sink1.hdfs.roundunit =minute

ag1.sinks.sink1.hdfs.uselocaltimestamp =true

#channel元件配置

ag1.channels.channel1.type =memory

ag1.channels.channel1.capacity = 500000 #

# event條數

ag1.channels.channel1.transactioncapacity = 600 #

#flume事務控制所需要的快取容量600條event

#繫結source、channel和sink之間的連線

ag1.sources.source1.channels =channel1

ag1.sinks.sink1.channel = channel1

啟動命令:

讀取新增行示意圖:

配置檔案配置:

#

定義三大元件的名稱

ag1.sources =source1

ag1.sinks =sink1

ag1.channels =channel1

#配置source元件

ag1.sources.source1.type = exec

#配置sink元件

ag1.sinks.sink1.type =hdfs

ag1.sinks.sink1.hdfs.filesuffix =.log

ag1.sinks.sink1.hdfs.batchsize= 100ag1.sinks.sink1.hdfs.filetype =datastream

ag1.sinks.sink1.hdfs.writeformat =text

## roll:滾動切換:控制寫檔案的切換規則

ag1.sinks.sink1.hdfs.rollsize = 512000 #

# 按檔案體積(位元組)來切

ag1.sinks.sink1.hdfs.rollcount = 1000000 #

# 按event條數切

ag1.sinks.sink1.hdfs.rollinterval = 60 #

# 按時間間隔切換檔案

## 控制生成目錄的規則

ag1.sinks.sink1.hdfs.round =true

ag1.sinks.sink1.hdfs.roundvalue = 10ag1.sinks.sink1.hdfs.roundunit =minute

ag1.sinks.sink1.hdfs.uselocaltimestamp =true

#channel元件配置

ag1.channels.channel1.type =memory

ag1.channels.channel1.capacity = 500000 #

# event條數

ag1.channels.channel1.transactioncapacity = 600 #

#flume事務控制所需要的快取容量600條event

#繫結source、channel和sink之間的連線

ag1.sources.source1.channels =channel1

ag1.sinks.sink1.channel = channel1

啟動:

Flume 基本使用

配置agent init a1.sources s1 a1.channels c1 a1.sinks k1 sources 1 動態監控單個日誌檔案 a1.sources.s1.type exec a1.sources.s1.command tail f opt cdh5.7.6 hive 1.1....

Flume學習筆記

agent1.sources source1 agent1.sinks sink1 agent1.channels channel1 agent1.sources source1.channels channel1 agent1.sinks sink1.channel channel1 agent1...

Flume學習筆記

一,flume概述 flume是乙個分布式,可靠的,高可用的海量日誌採集,聚合和傳輸系統。flume的作用 支援在日誌系統中定製各類資料的傳送方,用於收集資料 同時,flume提供對資料進行簡單處理,並寫到各資料的接受方 比如文字,hdfs,hbase等 的功能。二,組成 1 flume分布式系統中...