4.flume实战(一)
需求:从指定网络端口采集数据输出到控制台
使用flume的关键就是写配置文件
a)配置source
b)配置channel
c)配置sink
d)把以上三个组件串起来
我们看一下官网给的配置文件
# example.conf: A single-node Flume configuration a1:agent的名称 r1:source的名称 k1:sink的名称 c1:channel的名称 # Name the components on this agent a1.sources = r1 指定source a1.sinks = k1 指定sink a1.channels = c1 指定channel 这里指定的只有一个 # Describe/configure the source 这个agent有多个source,我们指定source的类型为netcat,绑定到localhost,我这里也可以写成ubuntu,可以通过hostname查看,监听端口为44444 a1.sources.r1.type = netcat a1.sources.r1.bind = localhost a1.sources.r1.port = 44444 # Describe the sink 表示将logger输出到控制台 a1.sinks.k1.type = logger # Use a channel which buffers events in memory 使用channel存到内存当中 a1.channels.c1.type = memory a1.channels.c1.capacity = 1000 a1.channels.c1.transactionCapacity = 100 # Bind the source and sink to the channel 把以上三个组件串起来 一个source可以接收不同的数据源 a1.sources.r1.channels = c1 但是sink只能sink到一个地方去 a1.sinks.k1.channel = c1
我们直接在conf下建一个example.conf,把上面的内容删掉我们添加的,然后拷贝进去
然后启动agent,如何启动:
flume-ng agent --name agent的名字 --conf 配置文件(就是flume目录下的conf) --conf-file 刚才我们写的配置文件 -Dflume.root.logger=INFO,console
其中--name也可以写成-n,--conf也可以写成-c,--conf-file也可以写成-f,但是这样省略的太多了,还是写全名更清晰。-Dflume.root.logger=INFO,console 表示将日志输出到控制台
启动,我这里输入:flume-ng agent --name a1 --conf $FLUME_HOME/conf --conf-file $FLUME_HOME/conf/example.conf -Dflume.root.logger=INFO,console
启动成功,显示监听44444端口,我们通过telnet localhost 44444连接一下
可以看到每当我输入一条内容,都会显示一条ok,表示发送成功,我们再来看看flume
可以看到将我们输入的内容,收集起来了。
2018-11-08 01:01:24,702 (SinkRunner-PollingRunner-DefaultSinkProcessor) [INFO - org.apache.flume.sink.LoggerSink.process(LoggerSink.java:94)] Event: { headers:{} body: 73 61 74 6F 72 69 0D satori. }
每一条记录都是一个event, 我们输入的内容在body里面
4.flume实战(一)的更多相关文章
- Flume实战案例运维篇
Flume实战案例运维篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Flume概述 1>.什么是Flume Flume是一个分布式.可靠.高可用的海量日志聚合系统,支 ...
- Flume 实战练习
前期准备 了解Flume 架构及核心组件 Flume 架构及核心组件 Source : 收集(指定数据源从哪里获取) Channel : 聚集 Sink : 输出(把数据写到哪里去) 学习使用 Flu ...
- Flume 实战(1) -- 初体验
前言: Flume-ng是数据收集/聚合/传输的组件, Flume-ng抛弃了Flume OG原本繁重的zookeeper和Master, Collector, 其整体的架构更加的简洁和明了. 其基础 ...
- Flume 实战(2)--Flume-ng-sdk源码分析
具体参考: 官方用户手册和开发指南 http://flume.apache.org/FlumeDeveloperGuide.html *) 定位和简单例子 1). Flume-ng-sdk是用于编写往 ...
- 5.flume实战(二)
需求:监控一个文件实时采集新增的数据并输出到控制台 简单理解就是:监控一个文件,只要这个文件有新的内容追加,就将它输出到控制台. agent技术选型:exec source + memory chan ...
- Flume 实战,将多台机器日志直接收集到 Kafka
目前我们使用的一个 b 端软件的报错日志分散在集群各处,现在想把它收集到一个地方然后统一丢进 Kafka 提供给下游业务进行消费. 我想到了 flume,之前让同事搭建的这次自己想多了解一些细节于是就 ...
- 6.flume实战(三)※
需求:将A服务器上的日志实时采集到B服务器上面去 大致原理: 技术选型: exec source + memory channel + avro sink avro source + memory c ...
- Spark Streaming从Flume Poll数据案例实战和内幕源码解密
本节课分成二部分讲解: 一.Spark Streaming on Polling from Flume实战 二.Spark Streaming on Polling from Flume源码 第一部分 ...
- Flume+Sqoop+Azkaban笔记
大纲(辅助系统) 离线辅助系统 数据接入 Flume介绍 Flume组件 Flume实战案例 任务调度 调度器基础 市面上调度工具 Oozie的使用 Oozie的流程定义详解 数据导出 sqoop基础 ...
随机推荐
- 深度学习anchor的理解
摘抄与某乎 anchor 让网络学习到的是一种推断的能力.网络不会认为它拿到的这一小块 feature map 具有七十二变的能力,能同时从 9 种不同的 anchor 区域得到.拥有 anchor ...
- Drools 7.4.1.Final参考手册(八) 规则语言参考
规则语言参考 概述 Drools有一个“本地”的规则语言.这种格式在标点符号上非常轻,并且通过“扩展器”支持自然语言和领域特定的语言,使语言能够变形到您的问题领域.本章主要与本机规则格式一致.用于表示 ...
- UGUI 代码 动态添加 Event Trigger 的事件
Additionally, if you need more than just the events provided by default, I'd suggest instead attachi ...
- 【历史】- Unix英雄传:图文细数十五位计算机先驱
Unix,一款多任务多用户操作系统,最早由AT&T公司员工及合作伙伴在贝尔实验室于1969年开发完成.Unix的衍生及克隆版本包括Berkeley Unix.Minix.Linux.AIX.A ...
- 开发一个delphi写的桌面图标管理代码
参加工作了就很少有时间去玩delphi了,这个适合初学者看看,大神勿喷 工具 delhpi7.0 access数据库 原则win下有安装office就可用 当初不太熟悉sqlite所有没用这做数据库. ...
- JAVA实现定时器功能
在接口开发时,有一种开发模式叫定时器模式,可以理解为每经过一段预设的时间就会执行一次事件,而在我们的工作中,这个事件所实现的功能一般是将两个系统的数据信息进行同步,这样就实现了两个系统通过接口进行对接 ...
- thrift的lua
thrift的lua实现 最近要进行系统升级,后台的数据是根据城市区分的.担心新系统的稳定性及新数据的准确性,计划部分城市采用新接口.接口的入参里没有城市信息,只有经纬度坐标,需要调用一个thrift ...
- 【算法】最小乘积生成树 & 最小乘积匹配 (HNOI2014画框)
今天考试的时候果然题目太难于是我就放弃了……转而学习了一下最小乘积生成树. 最小乘积生成树定义: (摘自网上一篇博文). 我们主要解决的问题就是当k = 2时,如何获得最小的权值乘积.我们注意到一张图 ...
- 安徽师大附中%你赛day7 T2 乘积 解题报告
乘积 题目背景 \(\mathrm{Smart}\) 最近在潜心研究数学, 他发现了一类很有趣的数字, 叫做无平方因子数. 也就是这一类数字不能够被任意一个质数的平方整除, 比如\(6\).\(7\) ...
- Hello to the cruel world