0

Hadoop へのデータのロードを開始するため、Apache Flume 1.2.0 に置き換える可能性を検討している自家製のイベント収集および処理フレームワークがあります。Flume には HTTP ソースがないため、Tomcat サーバーが組み込まれたカスタム ソースを作成しています。http://flume.apache.org/FlumeUserGuide.html#custom-sourceのドキュメントに従っていますが、開始すると次の例外が発生します。

java.lang.IllegalArgumentException: org.apache.flume.conf.properties の org.apache.flume.SourceRunner.forSource(SourceRunner.java:54) のソース com.xxx.xxx.flume.TestSource@5219f360 の既知のランナー タイプがありませんorg.apache.flume.conf.properties.PropertiesFileConfigurationProvider.load(PropertiesFileConfigurationProvider.java:222) の .PropertiesFileConfigurationProvider.loadSources(PropertiesFileConfigurationProvider.java:340) org.apache.flume.conf.file.AbstractFileConfigurationProvider.doLoad(AbstractFileConfigurationProvider.java) :123) org.apache.flume.conf.file.AbstractFileConfigurationProvider.access$300(AbstractFileConfigurationProvider.java:38) で org.apache.flume.conf.file.AbstractFileConfigurationProvider$FileWatcherRunnable.run(AbstractFileConfigurationProvider.java:202) で java .util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) で java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351) で java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178) で java .util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) で java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) で java.util.concurrent.ThreadPoolExecutor.runWorker(Thread. java:1110) で java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) で java.lang.Thread.run(Thread.java:722) でrunAndReset(FutureTask.java:178) で java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) で java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) で java. util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) で java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) で java.lang.Thread.run(Thread.java:722) でrunAndReset(FutureTask.java:178) で java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178) で java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) で java. util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) で java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) で java.lang.Thread.run(Thread.java:722) で1110) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) で java.lang.Thread.run(Thread.java:722) で1110) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) で java.lang.Thread.run(Thread.java:722) で

4

1 に答える 1

1

i think i figured it out. The documentation on the Flume website does not mention a custom implementation should implement not the Source interface but either the EventDrivenSource or PollableSource interface.

于 2012-11-02T19:50:11.170 に答える