使用拦截器运行flume代理时出错

tct7dpnv  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(642)

我正在尝试使用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文件放在哪里才能找到生成器?

gcmastyq

gcmastyq1#

将其放入flume\u home/lib,然后重新启动flume。
如果这不起作用,请确保拦截器实际实现了生成器接口。这可能是另一个原因。

相关问题