我正在尝试在同一源上添加2个不同的拦截器,并将拦截的数据发送到2个不同的通道。 但是,我无法进行配置。找不到与此相同的任何文档。此外,我在使用频道选择器时遇到了一些问题。不确定如何选择具有不同拦截器的通道。
到目前为止,这是我的代码:
a1.sources = syslog_udp
a1.channels = chan1 chan2
a1.sinks = sink1 sink2 //both are different kafka sinks
a1.sources.syslog_udp.type = syslogudp
a1.sources.syslog_udp.port = 514
a1.sources.syslog_udp.host = 0.0.0.0
a1.sources.syslog_udp.keepFields = true
a1.sources.syslog_udp.interceptors = i1 i2
a1.sources.syslog_udp.interceptors.i1.type = regex_filter
a1.sources.syslog_udp.interceptors.i1.regex = '<regex_string1>'
a1.sources.syslog_udp.interceptors.i1.excludeEvents = false
a1.sources.syslog_udp.interceptors.i2.type = regex_filter
a1.sources.syslog_udp.interceptors.i2.regex = '<regex_string1>'|'<regex_string2>'
a1.sources.syslog_udp.interceptors.i2.excludeEvents = false
a1.sources.syslog_udp.selector.type = multiplexing
a1.sources.syslog_udp.channels = chan1 chan2
a1.channels.chan1.type = memory
a1.channels.chan1.capacity = 200
a1.channels.chan2.type = memory
a1.channels.chan2.capacity = 200
答案 0 :(得分:0)
似乎没有简单的设置方法。 这种布局的一种变通方法是在一个代理中具有单个/较宽的通道拦截器,将输出通过管道传输到avro接收器,并为avro源设置一个新的代理,并在其上设置新的通道拦截器。