我正在使用水槽来做这样的事情
Source --> interceptor --> Channel --> multiplexing --> HDFS Sink
|-----------> Null Sink
我想在源之后添加一个频道,但我不希望事件通过拦截器。我想要“原始”活动。像这样:
Source --> interceptor (i) --> Channel --> multiplexing --> HDFS Sink
| |-----------> Null Sink
|-------> Channel (must no be intercepted by i) --> HDFS
我该怎么做?
由于
答案 0 :(得分:1)
由于拦截器是按源配置的,因此您必须添加第二个源(根本没有配置拦截器并在不同的Http端口中侦听),并发出两次数据:带有拦截器的源的一个副本,以及一个复制到其他来源。
另一种可能性是将两个代理链接起来。第一个包含没有拦截器的单个源,以及两个接收器:一个用于保存HDFS中的数据,另一个接收您已经拥有的代理。我的意思是:
src-->ch-->multip-->sink----------->src-->int-->ch-->multip-->hdfssink
|-->hdfssink |-->nullsink
(________agent1____________) (_____________agent2_____________)