1.Flume 的架构和MQ消息队列有点类似
2.Flume也可以做数据的持久化操作
在Channel部分选择使用File channel组件
3.Flume进行日志文件监控
场景:企业中应用程序部署后会将日志写入到文件中,我们可以使用Flume从各个日志文件将日志收集到日志中心以便于查找和分析。(也可以进行多日志文件的监控)
监控功能大致流程:
可以通过Exec Source或者Taildir Source来做这个日志监控的功能。
(我们只需要在对应的Source配置文件中配置好相关需求,组件就可以根据我们配置的内容去达到我们需要的要求)
4.多个agent模型
Flume支持多agent模型。可以将多个Flume agent程序连接在一起,其中一个agent的sink将数据发送到另一个agent的source。
Avro的文件格式是使用Flume通过网络发送数据的标准方法。
从多个Web服务器收集日志,,发送到一个或者多个集中处理的agent,之后再发往日志存储中心:
同样的日志发送到不同的目的地:
进行以上图片中的数据流向的流程(不同的搭配,组合),只需要在相应组件的配置文件中,配置好入口,出口,相关操作类型。当我们在配置文件中指明了这些属性之后,组件会“帮助”我们自动去完成数据的流向的流程。
5.Flume中的拦截器
拦截器可以将运行的事件Event进行修改或者丢弃,Flume支持链式调用拦截器,拦截器定义在source组件中。