Flume-ng:从本地复制日志文件到HDFS的源路径和类型

Flume-ng: source path and type for copying log file from local to HDFS

我正在尝试使用 flume-ng 将一些日志文件从 local 复制到 HDFSsource/home/cloudera/flume/weblogs/sinkhdfs://localhost:8020/flume/dump/。 cron 作业会将日志从 tomcat 服务器复制到 /home/cloudera/flume/weblogs/,我想将日志文件复制到 HDFS,因为这些文件在 /home/cloudera/flume/weblogs/ 中可用 [=14] =].下面是我创建的 conf 文件:

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

我无法理解:

1) agent1.sources.local.type = ??? 的值是多少 2) 在上面的 conf 文件中在哪里提到 source 路径 /home/cloudera/flume/weblogs/? 3) 我在上面的 conf 文件中遗漏了什么吗?

请让我知道这些。

您可以使用:

一个 Exec Source 并使用命令(即 cat or tail on gnu/linux on your files)

Spooling Directory Source 用于读取目录中的所有文件