我正在尝试使用linux从终端运行自定义flume代理。我正在cloudera虚拟机上工作。运行命令的Flume如下所示:
flume-ng agent --conf . -f spoolDirLocal2hdfs_memoryChannel.conflume.root.logger=DEBUG,console -n Agent5
具有拦截器的源如下所示:
Agent5.sources.spooldir-source.interceptors = i1
Agent5.sources.spooldir-source.interceptors.i1.type = org.flumefiles.flume.HtmlInterceptor$Buider
我把我的jar文件都放进了 /usr/lib/hadoop/lib/
以及 /usr/lib/flume-ng/lib/
. 我还创建了plugins.d /usr/lib/flume-ng/plugins.d/
把jar放在那里。但在运行flume代理时,我遇到了一个错误:
15/02/18 06:10:46 ERROR channel.ChannelProcessor: Builder class not found. Exception follows.
java.lang.ClassNotFoundException: org.intropro.flume.HtmlInterceptor$Buider
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
.....
我应该把jar文件放在哪里才能找到生成器?
1条答案
按热度按时间gcmastyq1#
将其放入flume\u home/lib,然后重新启动flume。
如果这不起作用,请确保拦截器实际实现了生成器接口。这可能是另一个原因。