博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Flume学习之路 (二)Flume的Source类型
阅读量:6682 次
发布时间:2019-06-25

本文共 2762 字,大约阅读时间需要 9 分钟。

一、概述

官方文档介绍:

二、Flume Sources 描述

2.1 Avro Source

2.1.1 介绍

监听Avro端口,从Avro client streams接收events。当与另一个(前一跳)Flume agent内置的Avro Sink配对时,它可以创建分层收集拓扑。字体加粗的属性必须进行设置

2.1.2 示例

示例一:示例请参考官方文档

示例二:

#配置一个agent,agent的名称可以自定义(如a1)#指定agent的sources(如s1)、sinks(如k1)、channels(如c1)#分别指定agent的sources,sinks,channels的名称 名称可以自定义a1.sources = s1a1.sinks = k1a1.channels = c1#配置sourcea1.sources.s1.channels = c1a1.sources.s1.type = avroa1.sources.s1.bind = 192.168.123.102a1.sources.s1.port = 6666#配置channelsa1.channels.c1.type = memory#配置sinksa1.sinks.k1.channel = c1a1.sinks.k1.type = logger#为sources和sinks绑定channelsa1.sources.s1.channels = c1a1.sinks.k1.channel = c1

启动flume

[hadoop@hadoop1 ~]$ flume-ng agent --conf conf --conf-file ~/apps/flume/examples/single_avro.properties --name a1 -Dflume.root.logger=DEBUG,console -Dorg.apache.flume.log.printconfig=true -Dorg.apache.flume.log.rawdata=true

通过flume提供的avro客户端向指定机器指定端口发送日志信息:

[hadoop@hadoop1 ~]$ flume-ng avro-client -c ~/apps/flume/conf -H 192.168.123.102 -p 6666 -F 666.txt

接收到的信息

2.2 Thrift Source

2.2.1 介绍

ThriftSource 与Avro Source 基本一致。只要把source的类型改成thrift即可,例如a1.sources.r1.type = thrift,比较简单,不做赘述。

2.3 Exec Source

2.3.1 介绍

ExecSource的配置就是设定一个Unix(linux)命令,然后通过这个命令不断输出数据。如果进程退出,Exec Source也一起退出,不会产生进一步的数据。

下面是官网给出的source的配置,加粗的参数是必选,描述就不解释了。

2.3.2 示例

#配置文件#Name the components on this agent  a1.sources= s1  a1.sinks= k1  a1.channels= c1     #配置sourcesa1.sources.s1.type = exec  a1.sources.s1.command = tail -F /home/hadoop/logs/test.log  a1.sources.s1.channels = c1     #配置sinks a1.sinks.k1.type= logger  a1.sinks.k1.channel= c1     #配置channela1.channels.c1.type= memory

启动命令

[hadoop@hadoop1 ~]$ flume-ng agent --conf conf --conf-file ~/apps/flume/examples/case_exec.properties --name a1 -Dflume.root.logger=DEBUG,console -Dorg.apache.flume.log.printconfig=true -Dorg.apache.flume.log.rawdata=true

继续往日志里添加数据

接收到的信息

2.4 JMS Source

2.4.1 介绍

从JMS系统(消息、主题)中读取数据,ActiveMQ已经测试过

2.4.2 官网示例

 

2.5 Spooling Directory Source

2.5.1 介绍

Spooling Directory Source监测配置的目录下新增的文件,并将文件中的数据读取出来。其中,Spool Source有2个注意地方,第一个是拷贝到spool目录下的文件不可以再打开编辑,第二个是spool目录下不可包含相应的子目录。这个主要用途作为对日志的准实时监控

下面是官网给出的source的配置,加粗的参数是必选。可选项太多,这边就介绍一个fileSuffix,即文件读取后添加的后缀名,这个是可以更改。

 

2.5.2 示例

a1.sources = s1  a1.sinks = k1  a1.channels = c1     # Describe/configure the source  a1.sources.s1.type =spooldir  a1.sources.s1.spoolDir =/home/hadoop/logs  a1.sources.s1.fileHeader= true  a1.sources.s1.channels =c1     # Describe the sink  a1.sinks.k1.type = logger  a1.sinks.k1.channel = c1     # Use a channel which buffers events inmemory  a1.channels.c1.type = memory

启动命令

[hadoop@hadoop1 ~]$ flume-ng agent --conf conf --conf-file /home/hadoop/apps/flume/examples/case_spool.properties --name a1 -Dflume.root.logger=INFO,console

讲123.log移动到logs目录

运行结果

2.6 其他

参考

 

转载地址:http://goxao.baihongyu.com/

你可能感兴趣的文章
Android简单框架会用到的基类(2)
查看>>
flask sqlalchemy多个外键引用同张表报错sqlalchemy.exc.AmbiguousForeignKeysError
查看>>
在 CentOS6 上安装 Python 2 & 3
查看>>
svnserver配置文件详解
查看>>
Mybatis之动态SQL语句
查看>>
文件上传利器SWFUpload使用指南
查看>>
jdbc性能优化
查看>>
linux下activemq异常退出,重启失败
查看>>
WordPress条件判断标签(Conditional Tags)手册
查看>>
【05】中级:翻页采集(以微博博主主页采集为例)
查看>>
OSSEC编写DECODE
查看>>
Hibernate 通用底层Dao
查看>>
JAVA 常用的工具类总结
查看>>
网络安装linux
查看>>
社交大革命,不可遏止的互联网春天
查看>>
蜂巢科技发布首款创新产品“小清新”空气卫士
查看>>
今天访问量过3000了,自己留个脚印
查看>>
工作区配置 4
查看>>
Android开发工程师,前行路上的14项技能
查看>>
w 查看系统负载 uptime vmsta 详解 top 详解 sar 命令 free 命令
查看>>