flume作为日志收集端,其本质上也是一个生产者消费者结构,source作为消息的producer,sink作为消息的consumer,中间的channel作消息的存储为了保证消息消费的正确性,flume使用了事务的机制,主要涉及的类:1)org.apache.flume.Transaction接口类,为访问channel提供事务的功..
分类:
Web程序 时间:
2015-03-04 06:22:18
阅读次数:
282
对于flume的监控,只需要监控channel的性能数据即可,source和sink的性能一部分可以从channel中表现出来。以MemoryChannel为例,在MemoryTransaction的构造函数中会实例化一个org.apache.flume.instrumentation.ChannelCounter对象publicMemoryTransaction(inttransCapacity,Ch..
分类:
Web程序 时间:
2015-03-04 06:22:07
阅读次数:
250
org.apache.flume.SinkProcessor扩展了LifecycleAware,Configurable接口的接口类,操作多个sink的抽象层(类似于proxy),用来分配给SinkRunner对象抽象方法:process和Sink的process方法类似(内部实现增加了选择Sink的功能)setSinks设置sinks具体实现类:org.apache.flume.s..
分类:
Web程序 时间:
2015-03-04 06:18:28
阅读次数:
206
最后提及两个agent。首先第一个是使用一个avro souce和一个avro sink向另一个agent传递event,然后再写入特定目录。 先看看配置代码。 agent6.sources = avrosource //定义avrosource,可以使用avro client在网络上向其传...
分类:
Web程序 时间:
2015-03-02 12:33:12
阅读次数:
191
flume-ng 1.5 新增一个Spillable memory channel :http://www.tuicool.com/articles/i2mUfqb虽然可以在sink阻塞时候,把event存入file channel,且file channel在flume崩溃再启动时能恢复数据,但是...
分类:
Web程序 时间:
2015-02-26 14:37:25
阅读次数:
261
一、FlumeNG核心概念二、FlumenNG数据流模型Flume以agent为最小的独立运行单位。一个agent就是一个JVM。单agent由Source、Sink和Channel三大组件构成。Flume的数据流由事件(Event)贯穿始终。事件是Flume的基本数据单位,它携带日志数据(字节数组形式)并且携带有头信息,这些Eve..
分类:
Web程序 时间:
2015-02-26 00:09:32
阅读次数:
1266
Flume架构主要由3个组件,分别是Source,Channel和Sink,3个组件组成Event在Flume中得数据流向或者说流水线,功能可以由Flume的介绍看出:When a Flume source receives an event, it stores it into one or mo...
分类:
Web程序 时间:
2015-02-15 19:21:33
阅读次数:
320
这里就简单贴个配置吧,有问题欢迎留言探讨
sink的配置
##############################define [sink] begin##############################
#define the sink k1
a1.sinks.k1.type=hdfs
a1.sinks.k1.channel=c1
a1.sinks.k1.hdfs.useLoca...
分类:
Web程序 时间:
2015-02-11 10:58:51
阅读次数:
212
没有运行,直接看源码得到sink简单运行过程SinkRunner负责运行sink程序内部类PollingRunnerimplements Runnable{ private SinkProcessor policy;}负责运行sinkrun方法while (!shouldStop.get()) {....
分类:
Web程序 时间:
2015-02-05 21:47:15
阅读次数:
211