錯誤信息
Failed to load configuration data. Exception follows.
org.apache.flume.FlumeException: Unable to load sink type: 8888, class: 8888
at org.apache.flume.sink.DefaultSinkFactory.getClass(DefaultSinkFactory.java:70)
at org.apache.flume.sink.DefaultSinkFactory.create(DefaultSinkFactory.java:43)
at org.apache.flume.node.AbstractConfigurationProvider.loadSinks(AbstractConfigurationProvider.java:450)
at org.apache.flume.node.AbstractConfigurationProvider.getConfiguration(AbstractConfigurationProvider.java:106)
at org.apache.flume.node.PollingPropertiesFileConfigurationProvider$FileWatcherRunnable.run(PollingPropertiesFileConfigurationProvider.java:145)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
2019-12-28 10:51:47,944 (conf-file-poller-0) [ERROR - org.apache.flume.node.PollingPropertiesFileConfigurationProvider$FileWatcherRunnable.run(PollingPropertiesFileConfigurationProvider.java:147)] Failed to load configuration data. Exception follows.
org.apache.flume.FlumeException: Unable to load sink type: 8888, class: 8888
at org.apache.flume.sink.DefaultSinkFactory.getClass(DefaultSinkFactory.java:70)
at org.apache.flume.sink.DefaultSinkFactory.create(DefaultSinkFactory.java:43)
at org.apache.flume.node.AbstractConfigurationProvider.loadSinks(AbstractConfigurationProvider.java:450)
at org.apache.flume.node.AbstractConfigurationProvider.getConfiguration(AbstractConfigurationProvider.java:106)
at org.apache.flume.node.PollingPropertiesFileConfigurationProvider$FileWatcherRunnable.run(PollingPropertiesFileConfigurationProvider.java:145)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: 8888
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at org.apache.flume.sink.DefaultSinkFactory.getClass(DefaultSinkFactory.java:68)
... 11 more
配置文件
# 五大步驟 主機1 通過選擇器 發送到2個channel中 兩個channel下沉到不同的另外兩臺主機中
#本腳本運行在t1主機中
#1. 定義這個agent中各組件的名字
a1.sources = s1
a1.channels = c1 c2
a1.sinks = k1 k2
# 2. 描述和配置source組件:s1
a1.sources.s1.type = exec
a1.sources.s1.command = tail -F /root/app/flumeData/a.log
#關鍵步驟 複製數據選擇器
a1.sources.s1.selector.type = replicating
# 3. 描述和配置channel組件,此處使用是內存緩存的方式
a1.channels.c1.type = memory
a1.channels.c2.type = memory
# 4. 描述和配置sink組件:向哪裏發送 指明主機和端口
a1.sinks.k1.type = avro
a1.sinks.k1.hostname = t2
#a1.sinks.k1.type = 8888 導致重大錯誤
#a1.sinks.k1.port = 8888
a1.sinks.k2.type = avro
a1.sinks.k2.hostname = t3
#a1.sinks.k2.type = 8888 導致重大錯誤
#a1.sinks.k2.port = 8888
#5.組件關聯
a1.sources.s1.channels = c1 c2
a1.sinks.k1.channel = c1
a1.sinks.k2.channel = c2
錯誤原因 VC 高手 最致命的bug
#a1.sinks.k1.type = 8888 導致重大錯誤 端口寫成了 類型
解決方案
# 五大步驟 主機1 通過選擇器 發送到2個channel中 兩個channel下沉到不同的另外兩臺主機中
#本腳本運行在t1主機中
#1. 定義這個agent中各組件的名字
a1.sources = s1
a1.channels = c1 c2
a1.sinks = k1 k2
# 2. 描述和配置source組件:s1
a1.sources.s1.type = exec
a1.sources.s1.command = tail -F /root/app/flumeData/a.log
#關鍵步驟 複製數據選擇器
a1.sources.s1.selector.type = replicating
# 3. 描述和配置channel組件,此處使用是內存緩存的方式
a1.channels.c1.type = memory
a1.channels.c2.type = memory
# 4. 描述和配置sink組件:向哪裏發送 指明主機和端口
a1.sinks.k1.type = avro
a1.sinks.k1.hostname = t2
#a1.sinks.k1.type = 8888 導致重大錯誤
a1.sinks.k1.port = 8888
a1.sinks.k2.type = avro
a1.sinks.k2.hostname = t3
#a1.sinks.k2.type = 8888 導致重大錯誤
a1.sinks.k2.port = 8888
#5.組件關聯
a1.sources.s1.channels = c1 c2
a1.sinks.k1.channel = c1
a1.sinks.k2.channel = c2
如果覺得我的文章對您有用,請隨意點贊。您的支持將鼓勵我繼續創作!
聽說,點讚我的人最後都找到了真愛!
聽說點讚我的人,都進了福布斯排行榜!
點讚的都是天使!
點讚了的人都會變美!
點讚的人最後都成了IT技術大牛!