分享

第一个agent的sink作为第二个agent的source如何设置?

Hentai 发表于 2016-9-27 16:15:40 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 8 12139
我想让第一个agent的sink 直接作为第二个agent的source该怎么配置呢?有配过这种方式的朋友吗?

已有(8)人评论

跳转到指定楼层
nextuser 发表于 2016-9-27 16:53:05
source与sink都是flume中的概念。

对于一个路径,你可以让他在source中,或则sink中。只要符合flume规则的配置,应该都是可以的。
但是从flume角度来讲只有三个概念source,channel,sink

个人认为可以,楼主可以试试。但是如果配置不当可能会产生问题。
回复

使用道具 举报

Hentai 发表于 2016-9-27 16:54:12
nextuser 发表于 2016-9-27 16:53
source与sink都是flume中的概念。

对于一个路径,你可以让他在source中,或则sink中。只要符合flume规则 ...

可以稍微说详细一点么?
回复

使用道具 举报

nextuser 发表于 2016-9-27 18:53:39
Hentai 发表于 2016-9-27 16:54
可以稍微说详细一点么?

楼主你说一下,这个是什么含义:
第一个agent的sink 直接作为第二个agent的source

你认为该如何配置,即使错了也没关系
回复

使用道具 举报

nextuser 发表于 2016-9-27 21:43:08
本帖最后由 nextuser 于 2016-9-27 21:44 编辑

这是第一个


agent1表示代理名称
agent1.sources=source1
agent1.sinks=sink1
agent1.channels=channel1


#配置source1
agent1.sources.source1.type=spooldir
agent1.sources.source1.spoolDir=/usr/aboutyunlog
agent1.sources.source1.channels=channel1
agent1.sources.source1.fileHeader = false

#配置sink1
agent1.sinks.sink1.type=hdfs
agent1.sinks.sink1.hdfs.path=hdfs://master:8020/aboutyunlog
agent1.sinks.sink1.hdfs.fileType=DataStream
agent1.sinks.sink1.hdfs.writeFormat=TEXT
agent1.sinks.sink1.hdfs.rollInterval=4
agent1.sinks.sink1.channel=channel1


#配置channel1
agent1.channels.channel1.type=file
agent1.channels.channel1.checkpointDir=/usr/aboutyun_tmp123
agent1.channels.channel1.dataDirs=/usr/aboutyun_tmp

这是第二个(注意这是不同客户端)


第一个agent的sink 直接作为第二个agent的source

agent2表示代理名称
agent2.sources=source1
agent2.sinks=sink1
agent2.channels=channel1


#配置source1
agent2.sources.source1.type=spooldir
agent2.sources.source1.spoolDir=hdfs://master:8020/aboutyunlog
agent2.sources.source1.channels=channel1
agent2.sources.source1.fileHeader = false

#配置sink1
agent2.sinks.sink1.type=hdfs
agent2.sinks.sink1.hdfs.path=hdfs://master:8020/xxxx
agent2.sinks.sink1.hdfs.fileType=DataStream
agent2.sinks.sink1.hdfs.writeFormat=TEXT
agent2.sinks.sink1.hdfs.rollInterval=4
agent2.sinks.sink1.channel=channel1


#配置channel1
agent2.channels.channel1.type=file
agent2.channels.channel1.checkpointDir=/usr/aboutyun_tmp123
agent2.channels.channel1.dataDirs=/usr/aboutyun_tmp




其实这两个没有任何关系




回复

使用道具 举报

Hentai 发表于 2016-9-28 10:14:05

差不多就是这样吧,其实我想用sink1直接发送给sources2 我看到官网上貌似没有这种方法
回复

使用道具 举报

Hentai 发表于 2016-9-28 10:16:59
nextuser 发表于 2016-9-27 18:53
楼主你说一下,这个是什么含义:
第一个agent的sink 直接作为第二个agent的source

agent1.sink1 → agent2.sources
回复

使用道具 举报

spftoto 发表于 2018-8-29 18:13:23

看了配置,好像是第一个agent的sink将日志采集到HDFS 然后第二个agent日志去监控HDFS上的目录 然后再采集。然后我有个问题想请教下,有没有办法配置让第一个agent的sink不经过HDFS,直接打入第二个agent的source。
回复

使用道具 举报

sstutu 发表于 2018-8-29 20:39:45
spftoto 发表于 2018-8-29 18:13
看了配置,好像是第一个agent的sink将日志采集到HDFS 然后第二个agent日志去监控HDFS上的目录 然后再采集 ...

可以的,先确保source是什么,然后替换掉hdfs。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条