拦截器是简单的插件式组件,设置在source和channel之间。source接收到的时间,在写入channel之前,拦截器都可以进行转换或者删除这些事件。每个拦截器只处理同一个source接收到的事件。flume官方实现了很多拦截器也可以自定义拦截器。通过实现自定义的拦截器可以对日志进行ETL。
自定义拦截器只需要实现Interceptor的继承类。具体步骤如下:
1. 实现一个Interceptor的继承类。下面的example实现了继承类ETLInterceptor. package 是com.test.flume .
//add begin
package com.test.flume;
//add end
import com.google.common.base.Charsets;
import com.google.common.collect.Lists;
import org.apache.flume.Context;
impor

本文介绍了如何在Flume中开发自定义拦截器。拦截器在source和channel之间工作,允许在事件写入channel前进行转换或删除。遵循四个步骤:1) 创建Interceptor的子类;2) 打成jar包并放入flume的plugins.d目录;3) 配置source的interceptor type;4) 启动flume使拦截器生效。这样能对日志进行ETL处理。

492

被折叠的 条评论
为什么被折叠?



