赞
踩
用flume从kafka导数据到kafka时有坑,Kafka Source可以正常从指定的Topic中读取数据,但在Kafka Sink中配置的目标Topic不起作用,数据仍然会被写入到Source中指定的Topic中,造成死循环。
产生原因:If the event header contains a “topic” field, the event will be published to that topic overriding the topic configured here(来自flume官网)
解决方法:使用Flume拦截器,修改event header中key=topic的值为目标topic,拦截器使用Static interceptor。
## Source 拦截器
- agent_myAgent.sources.r1.interceptors = i1
- agent_myAgent.sources.r1.interceptors.i1.type = static
- agent_myAgent.sources.r1.interceptors.i1.key = topic
- agent_myAgent.sources.r1.interceptors.i1.preserveExisting = false
- agent_myAgent.sources.r1.interceptors.i1.value = sinkTopic
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。