赞
踩
avro 类型 固定的日志文件内容
spooling 类型 固定的日志目录的新增文件内容
exec 类型 自定义的、实时的(采集新增加的),去重的采集固定的日志文件的内容
syslog 类型 利用 tcp、udp通信协议,采集端自动采集端口日志 5140
netcat 类型 也是利用tcp、udp通信协议,自定义端口
avro端口,只接收来来自外部avro客户端的事件流(avro序列化后的数据)
监听固定的日志文件的内容
avro监听和收集指定端口的日志,使用avro的source需要说明被监听的主机ip和端口号
channels: 接收客户数据源事件流的通道
type: Avro,
bind: 监听的主机名(master)或ip
port: 监听的端口
- # avro.conf
- # 第一步:命名
- a1.sources=r1
- a1.sinks=k1
- a1.channels=c1
-
- # 第二步:设置各个类型属性
- # source属性
- a1.sources.r1.type=Avro
- a1.sources.r1.bind=master
- a1.sources.r1.port=4141
-
- # channel属性
- a1.channels.c1.type=memory
- a1.channels.c1.capacity=1000
- a1.channels.c1.transactionCapacity=100
-
- # sink属性
- a1.sinks.k1.type=logger
-
- # 第三步:关联
- a1.sources.r1.channels=c1
- a1.sinks.k1.channel=c1
服务端
flume-ng agent -n a1 -c conf -f /app/flumeconf/avro_mem_logger.conf -Dflume.root.logger=INFO,console
客户端
flume-ng avro-client -c conf -H master -p 4141 -F /app/flume-1.8.0/flumedata/log.00
spooling-directory 对一个目录进行监控,新增一个文件就将文件的内容进行传输监控
允许将要收集的数据放置到指定的“搜集目录”中
监视该目录,并解析新出现的文件,(文件不能修改,重名)
type: spooldir
spooldir: 指定搜索目录
fileHeader: 指定采集过程中将数据源保存成文件来提高容错
inputCharset: GBK 传输编码类型
.COMPLETED: 对处理完成的文件追加的后缀
- # spool.conf
-
- # 命名agent a2的组件
- a2.sources=r2
- a2.channels=c2
- a2.sinks=k2
-
- # 描述/配置source
- a2.sources.r2.type=spooldir
- a2.sources.r2.spoolDir=/app/spool
- a2.sources.r2.fileHeader=true
- a2.sources.r2.inputCharset=GBK
-
- # 描述/配置sink
- a2.sinks.k2.type=logger
-
- # 描述/配置channel
- a2.channels.c2.type=memory
- a2.channels.c2.capacity=1000
- a2.channels.c2.transactionCapacity=100
-
- # 连接sources和sinks到channels
- a2.sources.r2.channels=c2
- a2.sinks.k2.channel=c2
服务端
flume-ng agent -n a2 -c conf -f /app/flumeconf/spool.conf -Dflume.root.logger=INFO,console .
exec 可以实现 实时的、高可靠的采集,利用exec来之定义日志采集
type: exec
command: tail -F /app/flume-1.8.0/flumedata/exec_log.01
- # exec.conf
-
- # 命名agent组件
- a3.sources=r3
- a3.sinks=k3
- a3.channels=c3
-
- # 描述/配置source
- a3.sources.r3.type=exec
- a3.sources.r3.command=tail -F /app/flume-1.8.0/flumedata/exec_log.01
-
- # 描述/配置sink
- a3.sinks.k3.type=logger
-
- # 内存channel配置
- a3.channels.c3.type=memory
- a3.channels.c3.capacity=1000
- a3.cahnnels.c3.transactionCapacity=100
-
- # 绑定sources和sinks到channel
- a3.sources.r3.channels=c3
- a3.sinks.k3.channel=c3
服务端
flume-ng agent -n a3 -c conf -f /app/flumeconf/exec_tail.conf -Dflume.root.logger=INFO,console
客户端
将数据写入 exec_log.01文件即可
syslog 通过syslog协议读取系统日志,分为tcp和udp两种,使用时需指定ip和端口(5140)
type: Syslogtcp
port: 5140
host: localhost等主机名或ip
- # 命名agent a4的组件
- a4.sources=r4
- a4.sinks=k4
- a4.channels=c4
-
- # 描述/配置sources
- a4.sources.r4.type=Syslogtcp
- a4.sources.r4.port=5140
- a4.sources.r4.host=localhost
-
- # 描述/配置内存sink
- a4.sinks.k4.type=logger
-
- # 描述/配置内存channel
- a4.channels.c4.type=memory
- a4.channels.c4.capacity=1000
- a4.channels.c4.transactionCapacity=100
-
- # 绑定source和sinks到channel
- a4.sources.r4.channels=c4
- a4.sinks.k4.channel=c4
服务端
flume-ng agent -n a4 -c conf -f /app/flumeconf/syslog_tcp.conf -Dflume.root.logger=INFO,console
客户端
利用 netcat 通信 (tcp协议)进行数据传输
连接 服务端 nc localhost 5140 后 进行操作输入内容 服务端就可以接收到对应内容
netcat 利用tcp协议进行通信 自定义连接端口,
type: netcat
port: 端口号
bind: 主机名或ip
- # Name the components on this agent
- a5.sources=r5
- a5.sinks=k5
- a5.channels=c5
-
- # 配置source
- a5.sources.r5.type=netcat
- a5.sources.r5.bind=localhost
- a5.sources.r5.port=44444
-
- # 配置sink
- a5.sinks.k5.type=logger
-
- # 配置channel
- a5.channels.c5.type=memory
- a5.channels.c5.capacity=1000
- a5.channels.c5.transactionCapacity=100
-
- # 连接sink source和channel
- a5.sources.r5.channels=c5
- a5.sinks.k5.channel=c5
服务端
flume-ng agent -n a5 -c conf -f /app/flumeconf/net_flume_logger.conf -Dflume.root.logger=INFO,console
客户端
连接对应的主机端口,进行通信
nc localhost 44444
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。