2016-03-23 15 views
0

Ich versuche, einige Protokolldateien von local zu HDFS mit flume-ng zu kopieren. Die source ist /home/cloudera/flume/weblogs/ und die sink ist hdfs://localhost:8020/flume/dump/. Ein Cron-Job kopiert die Protokolle vom Tomcat-Server in /home/cloudera/flume/weblogs/, und ich möchte die zu kopierenden Dateien unter der Nummer HDFS in die Datei /home/cloudera/flume/weblogs/ mit flume-ng kopieren. Im Folgenden finden Sie die conf Datei-I erstellt:Flume-ng: Quellpfad und Typ für das Kopieren der Protokolldatei von lokal nach HDFS

agent1.sources= local 
agent1.channels= MemChannel 
agent1.sinks=HDFS 

agent1.sources.local.type = ??? 
agent1.sources.local.channels=MemChannel 

agent1.sinks.HDFS.channel=MemChannel 
agent1.sinks.HDFS.type=hdfs 
agent1.sinks.HDFS.hdfs.path=hdfs://localhost:8020/flume/dump/ 
agent1.sinks.HDFS.hdfs.fileType=DataStream 
agent1.sinks.HDFS.hdfs.writeformat=Text 
agent1.sinks.HDFS.hdfs.batchSize=1000 
agent1.sinks.HDFS.hdfs.rollSize=0 
agent1.sinks.HDFS.hdfs.rollCount=10000 
agent1.sinks.HDFS.hdfs.rollInterval=600 
agent1.channels.MemChannel.type=memory 
agent1.channels.MemChannel.capacity=10000 
agent1.channels.MemChannel.transactionCapacity=100 

Ich bin zu verstehen, nicht in der Lage:

1), was der Wert von agent1.sources.local.type = ??? sein wird, den source Pfad /home/cloudera/flume/weblogs/ in der oben conf Datei 2), wobei zu erwähnen ? 3) Gibt es etwas, das ich in der obigen Conf-Datei vermisse?

Bitte lassen Sie mich auf diese wissen.

Antwort

1

können Sie entweder:

Ein Exec Source und verwenden Sie einen Befehl (dh cat oder tail auf GNU/Linux auf Dateien)

Oder ein Spooling Directory Source für Lesen Sie alle Dateien in einem Verzeichnis