flume环境配置好后,使用启动命令
flume-ng agent --conf $FLUME_HOME/flumeconf/agent.conf --name a1 -Dflume.root.logger=INFO,console
($FLUME_HOME/flumeconf/agent.conf为flume的配置文件)启动时,会报如下错误:
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
19/03/10 22:06:19 ERROR node.Application: A fatal error occurred while running. Exception follows.
java.lang.NullPointerException
at java.io.File.<init>(File.java:277)
at org.apache.flume.node.Application.main(Application.java:299)
我的配置文件的配置为:
a1.sources = r1
a1.channels = c1
a1.sinks = s1
a1.sources.r1.type = spooldir
a1.sources.r1.spoolDir = /root/flumeAgent
a1.sources.r1.channels = c1
a1.sinks.s1.type = logger
a1.channels.c1.type = memory
a1.sinks.s1.channel = c1
配置没错,但是就是报错,很是奇怪。翻墙找资料,换了个命令行:
flume-ng agent --conf $FLUME_HOME/flumeconf --conf-file $FLUME_HOME/flumeconf/agent.conf --name a1 -Dflume.root.logger=INFO,console
主要是加多了--conf-file的命令参数,flume启动就成功了。
刚开始使用flume,具体是什么原理后续再研究。