0

我正在学习水槽。当我试图从我的系统中读取日志文件时。我使用了以下代码..从互联网下载。

agent.sources = tailSrc
agent.channels = memoryChannel
agent.sinks = hdfsSink
agent.sources.tailSrc.type = exec
agent.sources.tailSrc.command = tail -f /home/kumar/hadoop-2.5.1/logs/hadoop-kumar-namenode-admin.log
agent.sources.tailSrc.channels = memoryChannel
agent.sinks.hdfsSink.type = hdfs
agent.sinks.hdfsSink.hdfs.path = hdfs://localhost:50000/flume
agent.sinks.hdfsSink.channel = memoryChannel
agent.channels.memoryChannel.type = memory
agent.channels.memoryChannel.capacity = 100

在上面的代码中,我不明白 tailSrc.commands 是什么意思。我知道源是在代理中配置并从外部源获取事件(数据)。

4

1 回答 1

0

在您的代码中 agent.sources.tailSrc.command 是 exec-source.just 参考链接。

https://flume.apache.org/FlumeUserGuide.html#exec-source

tail 是一个 unix 命令,默认情况下,tail 将输出其输入的最后 10 行。您可以提供任何命令或循环而不是 tail.simple 这些命令执行并将输出作为水槽代理的源。

http://en.wikipedia.org/wiki/Tail_%28Unix%29

于 2015-03-23T11:08:33.413 回答