問題タブ [flume]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
hdfs - Flume を使用してファイルを hdfs に抽出できない
私はcdh3u5でflume-ng-1.2.0を使用しています。テキストファイルからデータを抽出してhdfsに入れようとしているだけです。私が使用している構成は次のとおりです。
そして、私はエージェントを実行していますbin/flume-ng agent -n agent1 -c ./conf/ -f conf/flume.conf
そして私が得ているログは
どこが間違っているのかわかりません。私は初心者なので、hdfs で何も得られず、flume-agent が実行され続けます。提案と修正は私にとって非常に役に立ちます、ありがとう。
java - Flume 1.2.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) で
json - Flume-ng でログを JSON 形式で保存するにはどうすればよいですか
カスタム ログから AWS の s3 バケットにエントリを書き込む Flume コンソリデータがあります。
私が抱えている問題は、JSON形式で保存していないことです。私はflume-og(実際にはflume 0.9.4-cdh3u3)からアップグレードしたため、flume-ng(flume 1.2.0)を使用しています。Flume (og one) を使用していたとき、パラメータを設定せずにログを JSON 形式で移動するようにデフォルト設定していました。Flume-ng がログを解析して JSON 形式に設定することは可能ですか?
どんな助けでも大歓迎です。ありがとうございました
私のセットアップ構成は以下です
tomcat - 組み込みの Tomcat 7.0.32 スタートアップ jar スキャナー
Flume ソースに Tomcat 7.0.32 を埋め込んでいます。私が抱えている問題は、Flume がクラスパスに大量のものを配置し、起動時に Tomcat がクラスパスをスキャンして TLD を探していることです。これは、flume で使用されるワイルドカードが原因で問題を引き起こしています。
情報: サーブレット エンジンの起動: Apache Tomcat/7.0.32 2012 年 11 月 5 日 8:21:08 AM org.apache.catalina.startup.TldConfig tldScanJar 警告: JAR の処理に失敗しました [jar:file:/opt/mapr/hadoop/ hadoop-0.20.2/hadoop*core*.jar!/] TLD ファイルの場合 java.io.FileNotFoundException: /opt/mapr/hadoop/hadoop-0.20.2/hadoop*core*.jar (そのようなファイルまたはディレクトリはありません) java.util.zip.ZipFile.open(ネイティブ メソッド) で java.util.zip.ZipFile.(ZipFile.java:214) で java.util.zip.ZipFile.(ZipFile.java:144) で java.util .jar.JarFile.(JarFile.java:152) at java.util.jar.JarFile.(JarFile.java:89) sun.net.www.protocol.jar.URLJarFile.(URLJarFile.java:93) Sun .net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:69)、sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:88)、sun.net.www.protocol.jar .JarURL 接続。connect(JarURLConnection.java:122) at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:89) at org.apache.tomcat.util.scan.FileUrlJar.(FileUrlJar.java:41) at org.apache.tomcat.util.scan.JarFactory.newInstance(JarFactory.java:34) org.apache.catalina.startup.TldConfig.tldScanJar(TldConfig.java:487) org.apache.catalina.startup.TldConfig. access$100(TldConfig.java:58) at org.apache.catalina.startup.TldConfig$TldJarScannerCallback.scan(TldConfig.java:303) at org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:241) ) org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:204) で org.apache.catalina.startup.TldConfig.execute(TldConfig.java:277) で89) org.apache.tomcat.util.scan.FileUrlJar.(FileUrlJar.java:41) で org.apache.tomcat.util.scan.JarFactory.newInstance(JarFactory.java:34) で org.apache.catalina. startup.TldConfig.tldScanJar(TldConfig.java:487) org.apache.catalina.startup.TldConfig.access$100(TldConfig.java:58) org.apache.catalina.startup.TldConfig$TldJarScannerCallback.scan(TldConfig.java) :303) org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:241) で org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:204) で org.apache. catalina.startup.TldConfig.execute(TldConfig.java:277)89) org.apache.tomcat.util.scan.FileUrlJar.(FileUrlJar.java:41) で org.apache.tomcat.util.scan.JarFactory.newInstance(JarFactory.java:34) で org.apache.catalina. startup.TldConfig.tldScanJar(TldConfig.java:487) org.apache.catalina.startup.TldConfig.access$100(TldConfig.java:58) org.apache.catalina.startup.TldConfig$TldJarScannerCallback.scan(TldConfig.java) :303) org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:241) で org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:204) で org.apache. catalina.startup.TldConfig.execute(TldConfig.java:277)487) org.apache.catalina.startup.TldConfig.access$100(TldConfig.java:58) で org.apache.catalina.startup.TldConfig$TldJarScannerCallback.scan(TldConfig.java:303) で org.apache.tomcat. util.scan.StandardJarScanner.process(StandardJarScanner.java:241) at org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:204) at org.apache.catalina.startup.TldConfig.execute(TldConfig.ジャワ:277)487) org.apache.catalina.startup.TldConfig.access$100(TldConfig.java:58) で org.apache.catalina.startup.TldConfig$TldJarScannerCallback.scan(TldConfig.java:303) で org.apache.tomcat. util.scan.StandardJarScanner.process(StandardJarScanner.java:241) at org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:204) at org.apache.catalina.startup.TldConfig.execute(TldConfig.ジャワ:277)
私のコードでは、このスキャンを無効にしようとしましたが、コンテキストで JarScanner を null に設定しようとしました。そして、これは役に立ちません。以下は私のコードです:
nginx - NGINX を使用して追跡データを Flume に転送する
私は、単純な画像ビーコンを介して収集したインストルメンテーション データに基づいて、Web プロパティの分析を提供することに取り組んでいます。私たちのデータ パイプラインは Flume から始まります。クエリ文字列パラメーターを解析し、単純なテキスト メッセージを作成して Flume にプッシュする最速の方法が必要です。
パフォーマンス上の理由から、nginx に傾倒しています。メモリからの静止画像の提供は既にサポートされているため、私のタスクは、クエリ文字列を処理してメッセージを Flume に転送するだけです。したがって、質問:
nginx と Flume を統合する最も簡単で信頼できる方法は何ですか? syslog の使用を考えています (Flume は syslog リスナーをサポートしています) が、リモート サーバーとカスタム ポートで実行されている syslog (または単に TCP) リスナーにカスタム ログ メッセージを転送するように nginx を構成する方法に苦労しています。nginx 用の既存のサードパーティ モジュールで可能ですか、それとも自分で作成する必要がありますか?
それとは別に、高速な $args パーサーを作成するために推奨できる既存のものはすべて高く評価されます。
私が完全に間違った道を進んでおり、パフォーマンスに関してより良いものを推奨できると思われる場合は、お気軽にお知らせください。
前もって感謝します!
hdfs - Flume-ng でタイプが HDFS のシンクを作成できない
ログをHDFSに書き込むflume-ngがあります。
1 つのノードに 1 つのエージェントを作成しました。
しかし、それは実行されていません。
私の構成があります。
# example2.conf: 単一ノードの Flume 構成
# このエージェントのコンポーネントに名前を付ける agent1.sources
= source1 agent1.sinks
= sink1
agent1.channels = channel1
# source1 の記述/構成
agent1.sources.source1.type = avro
agent1.sources.source1.bind = localhost
agent1.sources.source1.port = 41414
# メモリにイベントをバッファリングするチャネルを使用します
agent1.channels.channel1.type = memory
agent1.channels.channel1.capacity = 10000
agent1.channels.channel1.transactionCapacity = 100
# シンク 1を記述する
agent1.sinks.sink1.type = HDFS
agent1.sinks.sink1.hdfs.path = hdfs://dbkorando.kaist.ac.kr:9000/flume
# ソースをバインドし、チャネルをシンクします
agent1.sources.source1.channels = channel1
agent1.sinks.sink1.channel = channel1
そして私は命令する
flume-ng agent -n agent1 -c conf -C /home/hyahn/hadoop-0.20.2/hadoop-0.20.2-core.jar -f conf/example2.conf -Dflume.root.logger=INFO,console
結果は
情報: HDFS アクセス+ exec /usr/java/jdk1.7.0_02/bin/java -Xmx20m -Dflume.root.logger=用に (/home/hyahn/hadoop-0.20.2/bin/hadoop) 経由で見つかった Hadoop ライブラリを含めますINFO,console -cp '/etc/flume-ng/conf:/usr/lib/flume-ng/lib/*:/home/hyahn/hadoop-0.20.2/hadoop-0.20.2-core.jar' - Djava.library.path=:/home/hyahn/hadoop-0.20.2/bin/../lib/native/Linux-amd64-64 org.apache.flume.node.Application -n agent1 -f conf/example2. conf
2012-11-27 15:33:17,250 (メイン) [INFO - org.apache.flume.lifecycle.LifecycleSupervisor.start(LifecycleSupervisor.java:67)] ライフサイクル スーパーバイザーを開始しています 1
2012-11-27 15:33:17,253 (main) [INFO - org.apache.flume.node.FlumeNode.start(FlumeNode.java:54)] Flume ノードの開始 - agent1
2012-11-27 15:33:17,257 (lifecycleSupervisor-1-1) [INFO - org.apache.flume.conf.file.AbstractFileConfigurationProvider.start(AbstractFileConfigurationProvider.java:67)]
2012-11-27 15を開始する構成プロバイダー:33:17,257 (lifecycleSupervisor-1-0) [INFO - org.apache.flume.node.nodemanager.DefaultLogicalNodeManager.start(DefaultLogicalNodeManager.java:203)]
2012-11-27 15:33:17,258 (lifecycleSupervisorを開始するノード マネージャー) -1-0) [INFO - org.apache.flume.lifecycle.LifecycleSupervisor.start(LifecycleSupervisor.java:67)] ライフサイクル スーパーバイザーを開始しています 9
2012-11-27 15:33:17,258 (conf-file-poller-0) [INFO - org.apache.flume.conf.file.AbstractFileConfigurationProvider$FileWatcherRunnable.run(AbstractFileConfigurationProvider.java:195)] 構成ファイルをリロードしています: conf/example2.conf
2012-11-27 15:33:17,266 (conf-file-poller-0) [INFO - org.apache.flume.conf.FlumeConfiguration$AgentConfiguration.addProperty(FlumeConfiguration.java:988)] 処理中:sink1
2012-11- 27 15:33:17,266 (conf-file-poller-0) [INFO - org.apache.flume.conf.FlumeConfiguration$AgentConfiguration.addProperty(FlumeConfiguration.java:988)] 処理:sink1
2012-11-27 15:33 :17,267 (conf-file-poller-0) [INFO - org.apache.flume.conf.FlumeConfiguration$AgentConfiguration.addProperty(FlumeConfiguration.java:988)] 処理中:sink1
2012-11-27 15:33:17,268 (conf -file-poller-0) [INFO - org.apache.flume.conf.FlumeConfiguration$AgentConfiguration.addProperty(FlumeConfiguration.java:902)] 追加されたシンク: sink1 エージェント: agent1
2012-11-27 15:33:17,290 (conf-file-poller-0) [INFO - org.apache.flume.conf.FlumeConfiguration.validateConfiguration(FlumeConfiguration.java:122)] 検証後の Flume 構成にエージェントの構成が含まれています: [agent1]
2012-11-27 15:33:17,290 (conf-file-poller-0) [INFO - org.apache.flume.conf.properties.PropertiesFileConfigurationProvider.loadChannels(PropertiesFileConfigurationProvider.java:249)] チャネルの作成
2012 -11-27 15:33:17,354 (conf-file-poller-0) [INFO - org.apache.flume.instrumentation.MonitoredCounterGroup.(MonitoredCounterGroup.java:68)] タイプの監視カウンター グループ: CHANNEL、名前: channel1 、 正常に登録。
2012-11-27 15:33:17,355 (conf-file-poller-0) [INFO - org.apache.flume.conf.properties.PropertiesFileConfigurationProvider.loadChannels(PropertiesFileConfigurationProvider.java:273)] 作成されたチャネル channel1
2012-11- 27 15:33:17,368 (conf-file-poller-0) [INFO - org.apache.flume.instrumentation.MonitoredCounterGroup.(MonitoredCounterGroup.java:68)] タイプ: SOURCE、名前: source1 の監視カウンター グループが正常に登録されました.
2012-11-27 15:33:17,378 (conf-file-poller-0) [INFO - org.apache.flume.sink.DefaultSinkFactory.create(DefaultSinkFactory.java:70)] シンクのインスタンスを作成しています: シンク 1、タイプ: HDFS
以上のように、ヒケ発生部で水流が止まる問題が発生しました。何が問題ですか?
hdfs - Flume-ng tail a file
データを HDFS にプッシュできるように、flume-ng でファイルを追跡する方法を理解しようとしています。最初の例では、単純な conf ファイルをセットアップしました。
これはテストであり、コンソールに出力が表示されることを期待しています。次のコマンドでこれを実行します。
次の出力が得られます。
検証後のフルーム構成には、エージェントの構成が含まれています: [tail1] 12/12/05 11:01:07 INFO プロパティ。 : CHANNEL、名前: channel1、正常に登録されました。12/12/05 11:01:08 情報 properties.PropertiesFileConfigurationProvider: 作成されたチャネル channel1 12/12/05 11:01:08 INFO シンク.DefaultSinkFactory: シンクのインスタンスを作成しています: シンク 1、タイプ: ロガー 12/12/05 11: 01:08 INFO nodemanager.DefaultLogicalNodeManager: 新しい構成を開始しています:{ sourceRunners:{source1=EventDrivenSourceRunner: { source:org.apache.flume.source.ExecSource@1839aa9 }} sinkRunners:{sink1=SinkRunner: { policy:org.apache. Flume.sink.DefaultSinkProcessor@11f0c98 counterGroup:{ name:null カウンター:
しかし、それ以上何も起こりません。
次のコマンドがある別のセッションがあります。
ファイルが書き込まれているのを確認できる場所:
手伝ってくれますか?私は完全に混乱しています。
hadoop - Flume 1.x(flume-ng)をフェイルオーバーモードで構成するにはどうすればよいですか?
CDH3のフェイルオーバーモードでのFlume(0,9x)ノードの構成については多くの情報があります。
ただし、CDH4のFlume(1.x)構成の構成形式は完全に異なります。Flume 1.x(flume-ng)をフェイルオーバーモードで構成するにはどうすればよいですか?
java - PHP と Flume を直接統合するか、PHP と Java を統合しますか?
java を使用して hbase にデータを記録するクライアントを開発しています。hbase との Flume 統合を使用しています。すでにクライアントを開発しており、アプリケーションはそれを完全に使用しています。問題は、クライアントを使用するすべてのアプリケーションも Java で開発されていることです。 php で開発された私のアプリケーションのうち、:::: php と Java の間、または php と Flume の間で直接通信して hbase にデータを記録する方法はありますか??
flume - hdfs を Flume のシンクとして使用して、hdfs ディレクトリで出力を取得できない
ソースとシンクが hdfs であるため、flume に通常のテキスト ファイルを提供しようとしています。ソース、チャネル、およびシンクは登録済みで開始されていることを示していますが、hdfs の出力ディレクトリには何も入っていません。 ???????